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 相关文章推荐
文本框回车提交与禁止提交示例
Sep 27 Javascript
兼容各大浏览器的JavaScript阻止事件冒泡代码
Jul 09 Javascript
javascript实现uploadify上传格式以及个数限制
Nov 23 Javascript
详细讲解JavaScript中的this绑定
Oct 10 Javascript
js实现界面向原生界面发消息并跳转功能
Nov 22 Javascript
Vue.js组件tree实现无限级树形菜单
Dec 02 Javascript
Es6 写的文件import 起来解决方案详解
Dec 13 Javascript
JS传参及动态修改页面布局
Apr 13 Javascript
微信小程序仿朋友圈发布动态功能
Jul 15 Javascript
vue项目打包部署到服务器的方法示例
Aug 27 Javascript
原生JS实现动态加载js文件并在加载成功后执行回调函数的方法
Dec 30 Javascript
vue实现简易计算器功能
Jan 20 Vue.js
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
PHP执行linux系统命令的常用函数使用说明
2010/04/27 PHP
php统计文章排行示例
2014/03/04 PHP
php中json_encode UTF-8中文乱码的更好解决方法
2014/09/28 PHP
php实现事件监听与触发的方法
2014/11/21 PHP
详解PHP中的Traits
2015/07/29 PHP
php读取txt文件并将数据插入到数据库
2016/02/23 PHP
用JavaScript脚本实现Web页面信息交互
2006/12/21 Javascript
基于jQuery的弹出消息插件 DivAlert之旅(一)
2010/04/01 Javascript
通过继承IHttpHandle实现JS插件的组织与管理
2010/07/13 Javascript
基于JQuery的浮动DIV显示提示信息并自动隐藏
2011/02/11 Javascript
js实现屏蔽默认快捷键调用自定义事件示例
2013/06/18 Javascript
纯JavaScript基于notie.js插件实现消息提示特效
2016/01/18 Javascript
JQuery的Pager分页器实现代码
2016/05/03 Javascript
基于JQuery的购物车添加删除以及结算功能示例
2017/03/08 Javascript
利用js给datalist或select动态添加option选项的方法
2018/01/25 Javascript
Vue 仿QQ左滑删除组件功能
2018/03/12 Javascript
vue中将html字符串转换成html后遇到的问题小结
2018/12/10 Javascript
iSlider手机端图片滑动切换插件使用详解
2019/12/24 Javascript
[01:38]DOTA2辉夜杯 欢乐的观众现场采访
2015/12/26 DOTA
小结Python用fork来创建子进程注意事项
2014/07/03 Python
浅谈python中scipy.misc.logsumexp函数的运用场景
2016/06/23 Python
Python实现对字符串的加密解密方法示例
2017/04/29 Python
Python数据分析之获取双色球历史信息的方法示例
2018/02/03 Python
python matplotlib绘图,修改坐标轴刻度为文字的实例
2018/05/25 Python
django输出html内容的实例
2018/05/27 Python
如何用Python来搭建一个简单的推荐系统
2019/08/07 Python
基于Python的接口自动化unittest测试框架和ddt数据驱动详解
2021/01/27 Python
CSS3绘制超炫的上下起伏波动进度加载动画
2016/04/21 HTML / CSS
HTML5的video标签的浏览器兼容性增强方案分享
2016/05/19 HTML / CSS
HTML5资源预加载(Link prefetch)详细介绍(给你的网页加速)
2014/05/07 HTML / CSS
环保建议书600字
2014/05/14 职场文书
副主任竞聘演讲稿
2014/08/18 职场文书
村长党的群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
会计人员岗位职责
2015/02/03 职场文书
2015年社区党建工作汇报材料
2015/06/25 职场文书
Python中itertools库的四个函数介绍
2022/04/06 Python