網站中人性化提示資訊的JavaScript實現

來源:互聯網
上載者:User

Web2.0講究的是福士的參與精神,不管是部落格、群組,還是wiki百科和rss彙總的成功都體現了這一點。然而要福士參與進來,實用性、個人化和人性化就顯得特別重要。一直說sohu部落格做得比較人性化,其中有一點大家都能感覺到,就是登陸後帳號旁邊的提示資訊,可以根據時間隨機的顯示不同的提示資訊。

其實這種功能實現的方式有很多,可以用asp,php這樣的後台指令碼來寫,也可以用Javascript在前台來實現,這裡我主要是分析了一下sohu的實現方式。

<Script language="JavaScript">

//定義提示資訊數組,c為通用的資訊,就是每天什麼時候都適合顯示的資訊。m為早上顯示的資訊,

//a為上午顯示的資訊,n對應中午,p對應下午,d為傍晚,e為晚上,l則對應晚上9-12點,w對應深夜。

var w = {
 c: [ '嘿咻嘿咻~', '多運動少生病', '-_-!', '歡迎來地球~', '股票又漲了~' ],
 m: ['早上好', '天亮了', '新的一天', '小鳥在歌唱~', '記得吃早點', '又堵車了:('],
 a: ['上午好', '好忙', '忙嗎?', '喝杯咖啡', '休息一下', '抓緊時間', ],
 n: ['中午好', '午飯時間',  '午飯要吃飽', '還不去吃飯?', '休息,休息一會兒'],
 p: ['下午好', '屋裡好熱~', '工作完成了?', '提高工作效率', '#_#有些困'],
 d: ['傍晚好', '又堵車了:(', '還不下班?', '吃些什嗎?', '一會兒去買菜',回家家找媽媽'],
 e: ['晚上好', '吃些什嗎?', '晚上去跑步', '魚香肉絲裡面是沒有魚的', '各回各家,各找各媽'],
 l: ['夜裡好', '還沒睡?', '今夜星光燦爛~', '還在工作嗎?'],
 w: ['睡吧,明天還上班~', '你不是一個人在戰鬥!', '長夜漫漫無心睡眠', '醒醒~~醒醒~'],
 k: ['周末好',  '周末^o^睡個懶覺', '給家裡打個電話吧', '該出去曬太陽了', '約朋友去打球']
};

//根據不同的時間,顯示對應的提示資訊。
function gw() {
 var t = new Date()
 var h = t.getHours();   //擷取當前的小時
 var d = t.getDay();     //擷取當前的禮拜
 var l = w.c;            //通用的資訊
 if ( h>=6 && h<9 ) {l = l.concat(w.m);}  //6-9點顯示通用的和早上的提示資訊
 if ( h>=9 && h<12 ) {l = l.concat(w.a);} //9-12點顯示通用的和上午的提示資訊
 if ( h>=12 && h<14 ) {l = l.concat(w.n);}
 if ( h>=14 && h<17 ) {l = l.concat(w.p);}
 if ( h>=17 && h<19 ) {l = l.concat(w.d);}
 if ( h>=19 && h<21 ) {l = l.concat(w.e);}
 if ( h>=21 && h<24 ) {l = l.concat(w.l);}
 if ( h>=0 && h<6 ) {l = l.concat(w.w);}
 if (d == 0 || d == 6) { l = l.concat(w.k);} //如果是周末,則可以顯示適合周末的問候語
 var n = Math.round(Math.random()*l.length); //Math.random()*l.length根據問候語的個數產生一個0到其個數的數字,Math.round()函數是用來取整的。
 if (n == 0){n = 1;}如果n為0,則設定為1,因為返回的值為n-1
 return(l[n-1]);
}

</Script>

這樣在介面中用html把gw函數產生的值顯示出來就可以了。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.