源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

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

  • 时间:2021-03-31 12:06 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:使用自定义setTimeout和setInterval使之可以传递参数和对象参数
/****************************************************** // // 功能: 修改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。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部