2011年6月21日 星期二

免費軟體一舉三得

手機程式不收錢卻能吸金,第一招就是在螢幕跳出小廣告,有的固定式、有的跑馬,只要不小心按到,業者就賺到錢。科技公司總經理陳康正:「手機上面這種廣告點擊率,會比網路上點擊得好,原因就是他螢幕特別小,所以很容易就點到。」記者:「收多少?」陳康正:「看情況,大概7元。」

不知道歌名歌詞,只要用這個軟體聽幾秒,就全部查得到,說是免費,但每個月限定5首,再查就要收費,這就是吸金術第二招,放長線釣大魚。陳康正:「我們目的就是希望讓玩家覺得這遊戲非常好玩,然後不知不覺地消費,可能會超過以前單買一款遊戲的價格。」

還有第三招,心理測驗底下小小一行字,放大再放大,劈頭跟你說使用免費,但要看結果要收台幣90元,真不懂這是哪門子的免費。

不只手機,網路上免費服務也有龐大商機,像是這個免費信箱,信件內容寫到青輔會,旁邊小廣告就會出現「就業」相關廣告,如果換成提到工程,旁邊小廣告就會變成跟工程有關的廣告,也就是說免費信箱會主動讀完你的信,找關鍵字配對廣告,這樣當然又有進帳。

臉書也有不少網址,一點開就是看不完的廣告,更別說點擊過程全被記錄下來,成了商業廣告配對資料,用「免費」當招牌經營出的商機,比收費還驚人。

2011年6月18日 星期六

[CSS]圖文對齊排列

當圖文並列時,若要讓圖片能夠對齊排列,而不是呈現出梯狀的分佈。
可以使用下列語法:

文字段落一


文字段落二

重點在於第二個 img 內的 "clear:left"
這個屬性的意思是如果左邊有浮動元件的話,此元件便移到該浮動元件下方。

2011年6月16日 星期四

蘋果零售店 不肯說的秘訣

Approach(接觸) Probe(探詢)Present(介紹)Listen(傾聽)End(結尾)

華爾街日報根據被列為機密的蘋果員工訓練手冊、零售店會議紀錄並訪問蘋果前任和現任員工,歸納蘋果零售店的銷售秘訣:嚴格控管員工與顧客的互動、訓練員工現場提供顧客技術支援、考慮每個細節,細到示範用的照片和音樂都預先挑選。

據訓練手冊,蘋果銷售人員奉行的銷售原則:不要推銷,而是協助顧客解決問題。「你們的工作是了解顧客的所有需求,有些需求連顧客自己都不知道。」員工拿不到佣金,也沒業績配額。

根據前員工提供的訓練手冊,蘋果的服務步驟藏在APPLE這五個字母中,A代表Approach(接觸),用個人化的親切態度接觸顧客;P代表Probe(探詢),禮貌地探詢顧客的需求;另一個P代表Present(介紹),介紹一個解決辦法讓顧客今天帶回家;L代表Listen(傾聽),傾聽顧客的問題並解決;E代表End(結尾),結尾時親切道別並歡迎再光臨。

年輕人不讓座 雄女挺身護孕婦 跟 (人肉搜壓力大 蹺腿姐認錯自稱躁鬱)台北捷運博愛座與老翁爆發言語衝突的「蹺腳姊」




北捷蹺腿姊昨日道歉
〔自由時報記者葛祐豪、劉榮/綜合報導〕北捷蹺腿姊霸博愛座事件引起公憤,昨天這名引發眾怒的短髮女,發表書面聲明,表示自己有躁症傾向,向社會道歉;PTT高雄板則有網友PO上一名年輕人霸佔高捷博愛座,不禮讓孕婦,穿著高雄女中制服的學生仗義執言,網友稱讚。

雄女校秘陳雲占表示,會查詢網路PO文者,找出這名女學生,公開表揚;她強調學校經常宣導在大眾交通工具上要讓座,很高興學生能實踐。

網友bogy2在PTT發文,標題是「謝謝雄女這位學生」。文中強調懷孕八個月的姊姊,日前和姊夫搭捷運出遊,經過中央公園站時,因不耐久站,發現博愛座坐著一位年輕人,姊夫希望年輕人讓座,但對方不為所動。

高捷雄女學生 仗義嗆霸位
此時一位穿制服的雄女學生,對年輕人說︰「這是博愛座耶,你沒看到有孕婦嗎?」年輕人瞪了雄女學生一眼,想不到雄女學生很有膽識,還補一句︰「瞪什麼,還不趕快起來」。

適逢北捷蹺腿姊狂罵老翁無人聞問,這篇PO文形成強烈對比。

而因占用台北捷運博愛座與老翁爆發言語衝突的「蹺腳姊」,影片被PO上網後,這名引發眾怒的謝姓短髮女,昨天透過民進黨台北市議員童仲彥發表書面道歉聲明。

謝小姐住新北市淡水區紅樹林站附近,每天都搭捷運上班,曾由精神科醫師診斷有躁症傾向,當影片在網路曝光引發軒然大波後,她相當難過,已經請假兩週。

署名「Nicole謝」的女子聲明指出:「當天我的腳受傷,站務人員也說,可以坐博愛座,但是阿伯上車後,一直用言語侮辱我,甚至越罵越大聲,我剛開始說『阿伯我讓你坐。』但是他又說不要坐,卻一直站著罵我,所以我也被激怒跟他對罵了。我要跟當天的乘客和阿伯說對不起,也很誠懇的向大家道歉。」

〔自由時報記者蔡偉祺/台北報導〕前天有網友在網路上公布一段名為「太惡劣了!」影片,敘述捷運上一名年輕女子坐在博愛座上和老年人互嗆,言語嗆辣,有超過三十萬名網友點閱,相關留言討論也有近萬則。多數網友批評這名年輕女子不讓位給老人,還態度不佳,甚至在臉書上發起「人肉搜索」,要她「踹共」,目前已有超過萬人加入。

影片中這名短髮年輕女子就坐在深藍色的博愛座上,蹺著腳和另一名老先生發生爭執。這名年輕女子似乎不滿被老先生指責坐姿不佳,腳蹺太高,因此心生不滿,怒嗆對方「死老頭」、「神經病」、「滾下車」,連「沒大沒小」也罵出口。還說自己「腳痠坐在這,而且位子就是要讓人坐的,你是想怎樣?」,甚至還質問對方是否要「叫警察」或「上新聞」。

老先生則是氣得教訓這名年輕女子「一點教養都沒學到」,還說「中華民國的教育不會教出每個人都像妳這樣子的啊!」,但仍被年輕女子反譏,「要講去大街上講,去跟中華民國總統講,去跟馬英九講,會不會?我教你」。

上傳影片的網友指出,該段影片是前天在捷運淡水線所拍攝。這名女乘客可能是因為腳蹺太高,碰到站在座位前的老先生,對方請她調整姿勢,引起女乘客不快,雙方才爆發言語衝突。

這段影片上傳到youtube網站,立刻引起網友全面痛批。多數看過影片的網友就質疑,這名年輕女子不讓座就算了,也不懂得敬老尊賢,且對老年人出言不遜,還涉及公然侮辱。

但也有人認為,這名年輕女子可能是身障人士,坐博愛座沒問題,但言語態度不佳,還是應該檢討。

疑似女乘客:來一個罵一個

不過,也有疑似這名年輕女乘客的網友上網反擊,認為是這名老先生先出惡言諷刺,她才會動怒回嗆,也坦承口出惡言是自己不對。但她不滿網友不明就裡就任意批評,還要對她人肉搜索,揚言「來一個我罵一個」,態度毫不退讓。

老翁亂嗆「坐沒坐相」翹腳女暴怒 老闆娘找議員幫忙
「你想上新聞是不是啊?」台北捷運日前一名戴著眼鏡的中性女子,翹腳坐在博愛座上,大聲嗆聲站在她對面的老翁,先說「他媽的這是殘障坐的你是搞不懂是不是啊」,再稱自己「腳痠不行嗎」,並用「媽的叫什麼B」、「死老頭」、「吵屁阿」、「神經病」等不雅字眼,還跟老翁說想講道理去找中華民國的總統講,整段過程都po上影音網站,引來網友撻伐,誓言要把這名「翹腳女」給人肉搜索出來。

翹腳女領有身障手冊 壓力大、老闆娘找童仲彥幫忙

原本「翹腳女」要與台北市議員童仲彥陪同下,向大眾道歉,不過連日來她的壓力極大,到最後還是沒出現。童仲彥說,謝姓女子在台北市東區髮廊當小妹,患有輕度精神障礙,領有身心障礙手冊,從小父母離異,也有持續做躁鬱症治療,平常都從淡水線的唭哩岸搭至板南線的忠孝復興站上班,他替謝小姐還原當天現場,坐上博愛座的原因是因為她腳不舒服,向站方反應後,表示可以坐在博愛座。

翹腳女有讓位 老翁不肯坐繼續罵

童仲彥表示老翁一上車後,看到她翹腳,就說她「坐沒坐相」,並要她讓座,謝姓女子基於晚輩、敬老尊賢的立場,一開始很客氣向阿伯說讓他坐,但阿伯不願意坐,還繼續批評「中華民國法律有教女孩子這麼沒水準,還翹腳坐嗎」,現場乘客眾多,後來也無法起身讓座,一時之間不知該反應,當下就跟老翁嗆聲,事後得知影片已經流傳,網友也連番砲轟並要人肉搜索,讓她相當害怕,髮廊老闆娘也看不下去,才會找童仲彥幫忙,她對於自己的情緒失控感到抱歉,也非常後悔。

不過暴怒前後說的話真的會「傷人又傷己」影片當中謝姓女子稱自己腳痠,事後反省自己當下是腳不舒服。但先前的「中指蕭」也是立委議員幫忙,這次也找政治人物來,難道這些人有這麼好找?精選更新網友們的意見。

Bishkek:每個出問題的都是精障

Avril1975:以後罵人完要被人肉就說自己有病就好了

Jaicabai:道歉還要找別人講、誠意在哪

k123123:不要污名化精障,少來這套

Dia149:遇到討人厭的老人+暴民,有理也說不清

Riyuberg:好吧 這次原諒你 以後要乖喔

TauchK:影片只拍到他發狂後 發狂前發生什麼事你知道喔

afternight:挖鄉民又換風向了 噓的義正嚴詞好像當天有在場一樣

我只能說 真真假假,假假真真,早知如此,何必當初,對於經常在搭捷運的人應該都是見怪不怪

2011年6月15日 星期三

C# 如何去除或有條件保留 HTML 標籤

/// 
/// 去除 HTML 標籤,可自訂合法標籤加以保留
///

/// 來源字串
/// 合法標籤集
///
public static string StripTags(string src, string[] reservedTagPool)
{
return Regex.Replace(
src,
String.Format("<(?!{0}).*?>", string.Join("|", reservedTagPool)),
String.Empty);
}


using System;

public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string html = "<div><p>OOXXOOXXOOXXOOXXOOXXOOXX!" + "<img src=\"http://www.OX.com.tw/Images/LoGO.gif\" alt=\"Logo\" /></p></div>";
string[] reservedTagPool = { "img", "br" };

TextBox1.Text = html;
TextBox2.Text = HtmlRemoval.StripTags(html, reservedTagPool);
Literal1.Text = HtmlRemoval.StripTags(html, reservedTagPool);
}
}
轉自 http://www.dotblogs.com.tw/hunterpo/archive/2010/11/26/19732.aspx

2011年6月11日 星期六

JavaScrip 取消所有enter 鍵

<body onkeydown="if(event.keyCode==13) return false;">

javascript 關閉網頁並跳出訊息視窗

<input type="button" value="關閉窗口" onClick="window.opener=null;window.close();">
<a href=javascript:window.opener=null;window.close();>關閉窗口</a>

JavaScript C# 將網頁中的TextBox資料複製到剪貼簿中

在網頁中有 TextBox 與 Button 控制項,假如使用者在 TextBox 輸入完成後,按下Button,並不是把值帶到任何別的網頁或資料庫,只是把 TextBox 的值複製到 系統剪貼簿clipboard中,之後可以在任何網址列或文字文件把值在度貼上。

可以使用 JavaScript 的 window.clipboardData.setData 達成

C# 語法
this.Button1.Attributes.Add("onclick", @"javascript:window.clipboardData.setData('Text',document.getElementById('" + this.TextBox1.UniqueID + @"').value);");
VB.NET 語法
Me.Button1.Attributes.Add("onclick", "javascript:window.clipboardData.setData('Text',document.getElementById('" & Me.TextBox1.UniqueID & "').value);")

C# TextBox的文字排序和亂數排序

想要把C#裡的TextBox排序 其實原理來說並不難,除了TextBox.Text可以設定文字的屬性外 還有一個TextBox.Lines,代表的是TextBox中文字的行數(以"行"為分組的陣列) 型態為string[],所以也可以用這個Lines屬性設定文字的內容,然後針對string[]陣列 就可以直接用Array.Sort()這個方法來進行排序,看似很簡單 但是不知道是.net的bug還是怎樣 如果程式直接寫成這樣,Array.Sort(textBox1.Lines);textBox1是不會有反應的 還是呈現未排序前的狀態

所以要另外先把textBox1的內容存到一個暫存的陣列中 排序完再assign回去,為了簡化程式碼 因此把這功能寫成一個函式,此函式會把所接收到的textbox內容進行排序 (照字母順序排序)
private void sortTextBoxText(TextBox targetTextBox)
{
string[] temp = targetTextBox.Lines;
Array.Sort(temp);
targetTextBox.Lines = temp;
}

另外 如果要亂數排序的話也是一樣道理 可以透過Array.Sort(keys,items)這個方法,先亂數產生一個random index的陣列當keys 那Array.Sort()就會用這亂數keys排序後面的items,那我們的textbox就會變成亂數排序囉!
private void randomSortTextBoxText(TextBox targetTextBox)
{
string[] temp = targetTextBox.Lines;
double[] randomIndex = new double[temp.Length];
Random r = new Random();
for (int i = 0; i < temp.Length; i++)
{
randomIndex[i] = r.NextDouble();
}
Array.Sort(randomIndex,temp);
targetTextBox.Lines = temp;
}