网上找来里的一个可以让setTimeout执行的function带上参数,同样原理,其他同类函数(如setInterval)也可以用的。
<script language="javascript"> /**//* 功能:修改 window.setTimeout,使之可以传递参数和对象参数 使用方法: setTimeout(回调函数,时间,参数1,,参数n) */ var __sto = setTimeout; window.setTimeout = function(callback,timeout,param){ var args = Array.prototype.slice.call(arguments,2); var _cb = function(){ callback.apply(null,args); } __sto(_cb,timeout); } ///测试代码 function aaaa(a){ alert(a); } function aaaaa(a,b,c){ alert(a + b + c); } var a = new Object(); window.setTimeout(aaaa,1000,a); window.setTimeout(aaaaa,2000,a,6,7); </script> | |