使用自定义setTimeout和setInterval使之可以传递参数和对象参数


Posted in Javascript onApril 24, 2009

/******************************************************
//
// 功能: 修改window.setTimeout,使之可以传递参数和对象参数
// 使用方法: window.setTimeout(回调函数,延迟时间,参数1,参数n)
//
******************************************************/
var mySetTimeOut = setTimeout;
window.setTimeout = function(callback, timeout)
{
var args = Array.prototype.slice.call(arguments, 2);
function callFn(){callback.apply(null, args);}
return mySetTimeOut(callFn, timeout);
}
/******************************************************
//
// 功能: 修改window.setInterval,使之可以传递参数和对象参数
// 使用方法: window.setInterval(回调函数,间隔时间,参数1,参数n)
//
******************************************************/
var mySetInterval = setInterval;
window.setInterval = function(callback, interval)
{
var args = Array.prototype.slice.call(arguments, 2);
function callFn(){callback.apply(null, args);}
return mySetInterval(callFn, interval);
}
// 测试代码传递object
// 普通参数就不举例了
var obj = {height: 40px;}
var testTimeout = testInterval = null;
function test(obj)
{
alert(obj.height);
clearSetTimeOut(testTimeout);
clearInterval(testInterval);
}
var testTimeout = window.setTimeout(test, 100, obj);
var testInterval = window.setInterval(test, 100, obj);
该函数兼容ie,firefox。并且可以使用clearSetTimeOut和clearInterval清除,比原setTimeout,setInterval方便很多,并且参数可以是object。

Javascript 相关文章推荐
一些主流JS框架中DOMReady事件的实现小结
Feb 12 Javascript
jQuery之字体大小的设置方法
Feb 27 Javascript
JavaScript 浏览器兼容性总结及常用浏览器兼容性分析
Mar 30 Javascript
Bootstrap实现带动画过渡的弹出框
Aug 09 Javascript
Ajax的概述与实现过程
Nov 18 Javascript
jQuery Validate让普通按钮触发表单验证的方法
Dec 15 Javascript
vue axios整合使用全攻略
May 24 Javascript
从零开始学习搭建React脚手架项目
Aug 23 Javascript
ES6中let 和 const 的新特性
Sep 03 Javascript
jQuery使用bind动态绑定事件无效的处理方法
Dec 11 jQuery
JS数据类型判断的几种常用方法
Jul 07 Javascript
Vue移动端项目实现使用手机预览调试操作
Jul 18 Javascript
在线编辑器中换行与内容自动提取
Apr 24 #Javascript
Js 获取HTML DOM节点元素的方法小结
Apr 24 #Javascript
jQuery对象和DOM对象相互转化
Apr 24 #Javascript
JavaScript 学习点滴记录
Apr 24 #Javascript
用JavaScript显示随机图像或引用
Apr 21 #Javascript
JavaScript 无符号右移运算符
Apr 17 #Javascript
JavaScript 无符号右移赋值操作
Apr 17 #Javascript
You might like
关于PHP中协程和阻塞的一些理解与思考
2017/08/11 PHP
详解php伪造Referer请求反盗链资源
2019/01/24 PHP
基于php+MySql实现学生信息管理系统实例
2020/08/04 PHP
一个高效的JavaScript压缩工具下载集合
2007/03/06 Javascript
Jquery 获取表单text,areatext,radio,checkbox,select值的代码
2009/11/12 Javascript
jQuery获取CSS样式中的颜色值的问题,不同浏览器格式不同的解决办法
2013/05/13 Javascript
JS复制内容到剪切板的实例代码(兼容IE与火狐)
2013/11/19 Javascript
JS使用replace()方法和正则表达式进行字符串的搜索与替换实例
2014/04/10 Javascript
js实现简单div拖拽功能实例
2015/05/12 Javascript
解决angular的post请求后SpringMVC后台接收不到参数值问题的方法
2015/12/10 Javascript
基于JavaScript代码实现微信扫一扫下载APP
2015/12/30 Javascript
三种AngularJS中获取数据源的方式
2016/02/02 Javascript
jQuery.form插件的使用及跨域异步上传文件
2016/04/27 Javascript
JavaScript 是什么意思
2016/09/22 Javascript
jquery实现图片列表鼠标移入微动
2016/12/01 Javascript
Easyui和zTree两种方式分别实现树形下拉框
2017/08/04 Javascript
解析Vue2 dist 目录下各个文件的区别
2017/11/22 Javascript
浅谈Vue.js 关于页面加载完成后执行一个方法的问题
2019/04/01 Javascript
微信小程序实现一个简单swiper代码实例
2019/12/30 Javascript
Vue3 响应式侦听与计算的实现
2020/11/11 Javascript
[03:04]2018年度DOTA2玩家最喜爱的主播-完美盛典
2018/12/16 DOTA
解读Python编程中的命名空间与作用域
2015/10/16 Python
基于python实现的抓取腾讯视频所有电影的爬虫
2016/04/22 Python
Python使用python-docx读写word文档
2019/08/26 Python
浅析python函数式编程
2020/09/26 Python
详解Python中Pyyaml模块的使用
2020/10/08 Python
CSS3常用的几种颜色渐变模式总结
2016/11/18 HTML / CSS
使用分层画布来优化HTML5渲染的教程
2015/05/08 HTML / CSS
HTML5中的拖放实现详解
2017/08/23 HTML / CSS
AE美国鹰美国官方网站:American Eagle Outfitters
2016/08/22 全球购物
会计职业生涯规划书
2014/01/13 职场文书
《问银河》教学反思
2014/02/19 职场文书
借款协议书范本
2014/04/22 职场文书
乡镇干部个人对照检查材料(群众路线)
2014/09/26 职场文书
担保书格式
2015/01/20 职场文书
2015年学校食堂工作总结
2015/04/22 职场文书