/****************************************************** // // 功能: 修改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+css 新闻显示tab 选项卡效果
脚本之家_新闻显示选项卡效果(javascript+css)
新闻排行
国内
国际
社会
网评
新疆阜康铁路桥梁坍塌多节运煤车厢侧翻坠河
最高法:承诺不判赖昌星死刑没有超越法律程序
物权法>>>详细阅读
本文标题:使用自定义setTimeout和setInterval使之可以传递参数和对象参数
地址:http://www.17bianji.com/kaifa2/JS/28787.html
1/2 1