当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 使用自定义setTimeout和setInterval使之可以传递参数和对象参数

Javascript
javascript form 验证函数 弹出对话框形式
IE JS编程需注意的内存释放问题
JQuery 无废话系列教程(二) jquery实战篇上
一些常用的JS功能函数代码
一个很酷的拖动层的js类,兼容IE及Firefox
JavaScript 开发中规范性的一点感想
javascript 连连看代码出炉
javascript 读取图片文件的大小
JQuery 国际象棋棋盘 实现代码
javascript 可以拖动的DIV(二)
[原创]javascript 改变字体大小方法集合
javascript 变量作用域 代码分析
js AspxButton的客户端操作
event对象的方法 兼容多浏览器
Javascript 阻止javascript事件冒泡,获取控件ID值
Javascript 函数对象的多重身份
javawscript 三级菜单的实现原理
js 跨域和ajax 跨域问题小结
JavaScript XML操作 封装类
通用的二级菜单代码(css+javascript)

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 319 ::
收藏到网摘: n/a

该函数兼容ie,firefox。并且可以使用clearSetTimeOut和clearInterval清除,比原setTimeout,setInterval方便很多,并且参数可以是object。 /******************************************************
//
// 功能: 修改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。