jquery+php實(shí)現(xiàn)滾動的數(shù)字特效
有時我們需要動態(tài)的展示訪問次數(shù)、下載次數(shù)等效果,我們可以借助jQuery結(jié)合后臺php實(shí)現(xiàn)一個滾動的數(shù)字展示效果。
本文以實(shí)時獲取某產(chǎn)品的下載次數(shù)為場景,前臺定時執(zhí)行javascript獲取最新的下載次數(shù),并滾動更新頁面上的下載次數(shù)。
HTML
我們首先載入jQuery庫文件和動畫背景插件:animateBackground-plugin.js。
<script type="text/javascript" src="js/jquery.js"></script> <script type="text/javascript" src="js/animateBackground-plugin.js"></script>
然后我們在頁面適當(dāng)?shù)奈恢弥屑尤胍故緮?shù)字滾動效果的html元素。
<div id="total"> 下載量:<span class="t_num"></span>次 </div>
jQuery
首先來寫一個函數(shù)show_num(),該函數(shù)用來實(shí)現(xiàn)動態(tài)滾動數(shù)字。我們將統(tǒng)計數(shù)字n進(jìn)行拆分成一個個單獨(dú)的數(shù)字,這些數(shù)字用<i></i>包圍,通過調(diào)用插件backgroundPosition將圖片定位到對應(yīng)的每個數(shù)字上。
function show_num(n){ var it = $(".t_num i"); var len = String(n).length; for(var i=0;i<len;i++){ if(it.length<=i){ $(".t_num").append("<i></i>"); } var num=String(n).charAt(i); var y = -parseInt(num)*30; //y軸位置 var obj = $(".t_num i").eq(i); obj.animate({ //滾動動畫 backgroundPosition :'(0 '+String(y)+'px)' }, 'slow','swing',function(){} ); } }
接著,我們通過ajax獲取后臺最新的下載次數(shù)。下面的代碼是一個常見的jQuery的ajax請求,通過post請求到data.php,data.php或獲取最新的下載次數(shù),處理成功后則得到下載次數(shù):data.count,然后調(diào)用show_num()實(shí)現(xiàn)數(shù)字滾動。
function getdata(){ $.ajax({ url: 'data.php', type: 'POST', dataType: "json", cache: false, timeout: 10000, error: function(){}, success: function(data){ show_num(data.count); } }); }
最后,我們在頁面加載完后要初始化數(shù)據(jù),然后每隔3秒鐘執(zhí)行一次ajax請求,更新下載次數(shù):
$(function(){ getdata(); setInterval('getdata()', 3000);//每隔3秒執(zhí)行一次 });
類似可以在統(tǒng)計網(wǎng)站訪問量、統(tǒng)計影片播放次數(shù)、倒計時等方面得到應(yīng)用,至于后臺data.php如何處理數(shù)據(jù)不在本文敘述范圍內(nèi),有興趣的同學(xué)可以自己寫一個諸如計數(shù)器之類的后臺程序來返回data.count。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助。
相關(guān)文章
jQuery遍歷DOM元素與節(jié)點(diǎn)方法詳解
這篇文章主要介紹了jQuery遍歷DOM元素與節(jié)點(diǎn)方法,結(jié)合實(shí)例形似詳細(xì)分析了jQuery遍歷DOM父級節(jié)點(diǎn),子級節(jié)點(diǎn)及兄弟節(jié)點(diǎn)的相關(guān)技巧,需要的朋友可以參考下2016-04-04舉例講解jQuery對DOM元素的向上遍歷、向下遍歷和水平遍歷
使用jQuery可以更加容易地遍歷DOM的父級、子級和同級元素,這里我們就來舉例講解jQuery對DOM元素的向上遍歷、向下遍歷和水平遍歷:2016-07-07jquery load()在firefox(火狐)下顯示不正常的解決方法
覺得應(yīng)該是由于 直接將www.baidu.com的內(nèi)容放到div中,對于較嚴(yán)格的FireFox可能不會處理用cssviewter查看處理后的頁面源碼果然發(fā)現(xiàn)div中為空2011-04-04jQuery實(shí)現(xiàn)右下角可縮放大小的層完整實(shí)例
這篇文章主要介紹了jQuery實(shí)現(xiàn)右下角可縮放大小的層,以完整實(shí)例形式分析了jQuery頁面元素及相關(guān)樣式屬性操作技巧,需要的朋友可以參考下2016-06-06比較簡單的jquery教程 Easy Ajax with jQuery 中文版全集
比較簡單的jquery教程 Easy Ajax with jQuery 中文版全集...2007-11-11checkbox批量選中,獲取選中項的值的簡單實(shí)例
下面小編就為大家?guī)硪黄猚heckbox批量選中,獲取選中項的值的簡單實(shí)例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-06-06兩種方法基于jQuery實(shí)現(xiàn)IE瀏覽器兼容placeholder效果
這篇文章主要介紹了兩種方法基于jQuery實(shí)現(xiàn)IE瀏覽器兼容placeholder效果,需要的朋友可以參考下2014-10-10