使用自定义setTimeout和setInterval使之可以传递参数和对象参数_Javascript教程-查字典教程网
使用自定义setTimeout和setInterval使之可以传递参数和对象参数
使用自定义setTimeout和setInterval使之可以传递参数和对象参数
发布时间:2016-12-30 来源:查字典编辑
摘要:/******************************************************////功能:修改window...

/******************************************************

//

// 功能: 修改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教程学习
    热门Javascript教程学习
    编程开发子分类