Mic*_*iew 1 javascript time jquery timeout
如果我不知道setInterval()or的返回值setTimeOut(),我还可以使用clearInterveral(id)orclearTimeOut(id)来清除它们吗?
谢谢。
您可以替换原来的 setTimeout 和 setInterval ,例如:
setInterval = (function( oldsetInterval){
var registered=[],
f = function(a,b){
return registered[ registered.length ] = oldsetInterval(a,b)
};
f.clearAll = function(){
var r;
while( r = registered.pop()) {
clearInterval( r );
}
};
return f;
})(window.setInterval);
Run Code Online (Sandbox Code Playgroud)
现在:
setInterval( function(){alert(5000)}, 5000 );
setInterval( function(){alert(10000)}, 10000 );
setInterval.clearAll();
Run Code Online (Sandbox Code Playgroud)
建议来自 @PointedEars 的评论,您不应该使用相同的名称,因此:
reportingSetInterval = as above;
reportingSetInterval( function(){alert(5000)}, 5000 );
Run Code Online (Sandbox Code Playgroud)
等等..
| 归档时间: |
|
| 查看次数: |
3804 次 |
| 最近记录: |