JavaScript节流函数
2017-10-29 21:21
253 查看
var throttle = function(fn, delay, mustRunDelay){ var timer = null; var start; // 这里是利用一个闭包来保存变量,避免污染全局变量 return function(){ var context = this, args = arguments, current = +new Date(); clearTimeout(timer); if(!start){ // 设置开始时间标记 start = current; } if(current - start >= mustRunDelay){ fn.apply(context, args); start = current; } else { timer = setTimeout(function(){ fn.apply(context, args); }, delay); } }; };
相关文章推荐
- 高性能Web应用的优化技术
- JQuery1——基础($对象,选择器,对象转换)
- Android学习笔记(二九):嵌入浏览器
- Android java 与 javascript互访(相互调用)的方法例子
- 只需四个步骤几行代码,即可快速实现直播弹幕功能
- 浅析 Node.js 的 vm 模块以及运行不信任代码
- @blankapp/ui,高可定制和主题化的 React Native 组件库
- JavaScript演示排序算法
- javascript实现10进制转为N进制数
- 关于setInterval与setTimeout作用域问题
- JavaScript 基础、进阶以及 Ubuntu 系统中的 JavaScript 开发调试工具
- 最后一次说说闭包
- Ajax
- 2019年开发人员应该学习的8个JavaScript框架
- HTML中的script标签研究