jquery+php实现滚动的数字特效


Posted in Javascript onNovember 29, 2015

有时我们需要动态的展示访问次数、下载次数等效果,我们可以借助jQuery结合后台php实现一个滚动的数字展示效果。

jquery+php实现滚动的数字特效

本文以实时获取某产品的下载次数为场景,前台定时执行javascript获取最新的下载次数,并滚动更新页面上的下载次数。
HTML
我们首先载入jQuery库文件和动画背景插件:animateBackground-plugin.js。

<script type="text/javascript" src="js/jquery.js"></script> 
<script type="text/javascript" src="js/animateBackground-plugin.js"></script>

然后我们在页面适当的位置中加入要展示数字滚动效果的html元素。

<div id="total"> 
  下载量:<span class="t_num"></span>次 
</div>

jQuery
首先来写一个函数show_num(),该函数用来实现动态滚动数字。我们将统计数字n进行拆分成一个个单独的数字,这些数字用<i></i>包围,通过调用插件backgroundPosition将图片定位到对应的每个数字上。

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获取后台最新的下载次数。下面的代码是一个常见的jQuery的ajax请求,通过post请求到data.php,data.php或获取最新的下载次数,处理成功后则得到下载次数:data.count,然后调用show_num()实现数字滚动。

function getdata(){ 
  $.ajax({ 
    url: 'data.php', 
    type: 'POST', 
    dataType: "json", 
    cache: false, 
    timeout: 10000, 
    error: function(){}, 
    success: function(data){ 
      show_num(data.count); 
    } 
    }); 
}

最后,我们在页面加载完后要初始化数据,然后每隔3秒钟执行一次ajax请求,更新下载次数:

$(function(){ 
  getdata(); 
  setInterval('getdata()', 3000);//每隔3秒执行一次 
});

类似可以在统计网站访问量、统计影片播放次数、倒计时等方面得到应用,至于后台data.php如何处理数据不在本文叙述范围内,有兴趣的同学可以自己写一个诸如计数器之类的后台程序来返回data.count。

以上就是本文的全部内容,希望对大家的学习有所帮助。

Javascript 相关文章推荐
实现动画效果核心方式的js代码
Sep 27 Javascript
写出高效jquery代码的19条指南
Mar 19 Javascript
jQuery.holdReady()使用方法
May 20 Javascript
Javascript学习笔记之数组的遍历和 length 属性
Nov 23 Javascript
node.js中的fs.fstatSync方法使用说明
Dec 15 Javascript
jquery实现横向图片轮播特效代码分享
Nov 19 Javascript
js控制台输出的方法(详解)
Nov 26 Javascript
jquery对所有input type=text的控件赋值实现方法
Dec 02 Javascript
微信页面倒计时代码(解决safari不兼容date的问题)
Dec 13 Javascript
react-redux中connect()方法详细解析
May 27 Javascript
ES6中Array.copyWithin()函数的用法实例详解
Sep 16 Javascript
JavaScript实现网页留言板功能
Nov 23 Javascript
MVC Ajax Helper或Jquery异步加载部分视图
Nov 29 #Javascript
Javascript闭包实例详解
Nov 29 #Javascript
jQuery实现图片上传和裁剪插件Croppie
Nov 29 #Javascript
javascript高级编程之函数表达式 递归和闭包函数
Nov 29 #Javascript
javascript实现拖动元素交换位置
Nov 29 #Javascript
javascript实现网页中涉及的简易运动(改变宽高、透明度、位置)
Nov 29 #Javascript
通用javascript代码判断版本号是否在版本范围之间
Nov 29 #Javascript
You might like
用ODBC的分页显示
2006/10/09 PHP
PHP 和 XML: 使用expat函数(二)
2006/10/09 PHP
phplock(php进程锁) v1.0 beta1
2009/11/24 PHP
php简单实现MVC
2015/02/05 PHP
PHP自定义序列化接口Serializable用法分析
2017/12/29 PHP
win10 apache配置虚拟主机后localhost无法使用的解决方法
2018/01/27 PHP
php如何把表单内容提交到数据库
2019/07/08 PHP
JavaScript 对象、函数和继承
2009/07/07 Javascript
Jquery下的26个实用小技巧(jQuery tips, tricks &amp; solutions)
2010/03/01 Javascript
Jquery 扩展方法
2010/05/06 Javascript
Javascript读取cookie函数代码
2010/10/16 Javascript
浅谈JavaScript异常处理语句
2015/06/26 Javascript
JS实现来回出现文字的状态栏特效代码
2015/10/31 Javascript
基于jQuery日历插件制作日历
2016/03/11 Javascript
js数组的五种迭代方法及两种归并方法(推荐)
2016/06/14 Javascript
浅谈angularjs依赖服务注入写法的注意点
2017/04/24 Javascript
Angular.js中下拉框实现渲染html的方法
2017/06/18 Javascript
React学习笔记之条件渲染(一)
2017/07/02 Javascript
JS实现动态生成html table表格的方法分析
2018/07/11 Javascript
详解vue中router-link标签所必备了解的属性
2019/04/15 Javascript
vue-cli3添加模式配置多环境变量的方法
2019/06/05 Javascript
微信小程序实现通讯录列表展开收起
2020/11/18 Javascript
[00:21]DOTA2亚洲邀请赛 Logo演绎
2015/02/07 DOTA
Python黑帽编程 3.4 跨越VLAN详解
2016/09/28 Python
python中numpy包使用教程之数组和相关操作详解
2017/07/30 Python
python 列表递归求和、计数、求最大元素的实例
2018/11/28 Python
Windows10+anacond+GPU+pytorch安装详细过程
2020/03/24 Python
python如何写try语句
2020/07/14 Python
澳大利亚波西米亚风连衣裙在线商店:Fortunate One
2019/04/01 全球购物
电脑教师的自我评价
2013/12/18 职场文书
《小山羊和小灰兔》教学反思
2014/02/19 职场文书
社区食品安全实施方案
2014/03/28 职场文书
孔庙导游词
2015/02/04 职场文书
2015年收银员个人工作总结
2015/04/01 职场文书
2015年全民创业工作总结
2015/07/23 职场文书
python3实现Dijkstra算法最短路径的实现
2021/05/12 Python