使用自定义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 相关文章推荐
破除一些网站复制、右键限制
Nov 04 Javascript
ExtJs grid行 右键菜单的两种方法
Jun 19 Javascript
js arguments,jcallee caller用法总结
Nov 30 Javascript
jQuery实现感应鼠标动画效果自动伸长的输入框实例
Feb 24 Javascript
jQuery统计指定子元素数量的方法
Mar 17 Javascript
jQuery插件Easyui设置datagrid的pageNumber导致两次请求问题的解决方法
Aug 06 Javascript
AngularJS 防止页面闪烁的方法
Mar 09 Javascript
深入浅析Vue不同场景下组件间的数据交流
Aug 15 Javascript
解决layer.msg 不居中 ifram中的问题
Sep 05 Javascript
js实现简单的贪吃蛇游戏
Apr 23 Javascript
Element MessageBox弹框的具体使用
Jul 27 Javascript
JavaScript常用进制转换及位运算实例解析
Oct 14 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内存相关的功能特性详解
2013/06/08 PHP
9个经典的PHP代码片段分享
2014/12/18 PHP
PHP date函数常用时间处理方法
2015/05/11 PHP
PHP检测用户是否关闭浏览器的方法
2016/02/14 PHP
thinkphp3.x中display方法及show方法的用法实例
2016/05/19 PHP
PHP面向对象之工作单元(实例讲解)
2017/06/26 PHP
用Javascript同时提交多个Web表单的方法
2009/12/26 Javascript
判断JS对象是否拥有某种属性的两种方式
2013/12/02 Javascript
返回上一页并自动刷新的JavaScript代码
2014/02/19 Javascript
JavaScript中对循环语句的优化技巧深入探讨
2014/06/06 Javascript
JavaScript中的substr()方法使用详解
2015/06/06 Javascript
Bootstrap实现默认导航栏效果
2020/09/21 Javascript
探寻JavaScript中this指针指向
2016/04/23 Javascript
浅谈Javascript中的12种DOM节点类型
2016/08/19 Javascript
JQuery用$.ajax或$.getJSON跨域获取JSON数据的实现代码
2017/09/23 jQuery
原生JS实现图片无缝滚动方法(附带封装的运动框架)
2017/10/01 Javascript
通过 JS 判断页面是否有滚动条的实现方法
2018/04/05 Javascript
JS实现带阴历的日历功能详解
2019/01/24 Javascript
ios中视频的最后一桢问题解决
2019/05/14 Javascript
基于ajax及jQuery实现局部刷新过程解析
2020/09/12 jQuery
三步搞定:Vue.js调用Android原生操作
2020/09/07 Javascript
Python递归遍历列表及输出的实现方法
2015/05/19 Python
基于python socketserver框架全面解析
2017/09/21 Python
Windows下Anaconda的安装和简单使用方法
2018/01/04 Python
创建pycharm的自定义python模板方法
2018/05/23 Python
[机器视觉]使用python自动识别验证码详解
2019/05/16 Python
pytorch索引查找 index_select的例子
2019/08/18 Python
Python3自动生成MySQL数据字典的markdown文本的实现
2020/05/07 Python
3分钟看懂Python后端必须知道的Django的信号机制
2020/07/26 Python
python Scrapy框架原理解析
2021/01/04 Python
HTML5录音实践总结(Preact)
2020/05/07 HTML / CSS
CHARLES & KEITH加拿大官网:新加坡时尚品牌
2020/03/26 全球购物
开业庆典主持词
2014/03/21 职场文书
校园活动策划方案
2014/06/13 职场文书
大型公益活动策划方案
2014/08/20 职场文书
小学教师师德培训心得体会
2016/01/09 职场文书