当前位置: 代码迷 >> Web前端 >> 修复IE上setTimeout不能传参数的bug
  详细解决方案

修复IE上setTimeout不能传参数的bug

热度:111   发布时间:2012-11-04 10:42:42.0
修复IE下setTimeout不能传参数的bug
IE下setTimeout不能参数,如:
setTimeout(function(a,b){
alert(a+"|"+b);
},1000,123,456);
在非ie下都是可以的
//修复setTimeout bug,使用window.setTimeout调用
if(!+'\v1') {
    (function(f){
        window.setTimeout =f(window.setTimeout);
        window.setInterval =f(window.setInterval);
    })(function(f){
        return function(c,t){
            var a=[].slice.call(arguments,2);
            return f(function(){
                c.apply(this,a)},t)
            }
    });
}


修复之后:
window.setTimeout(function(a,b){
   alert(a+"|"+b);
},1000,123,456);
1 楼 andot 2010-06-12  
这个帖子真是太好了! 楼主真乃神人耶,膜拜中……
2 楼 wjjxf 2010-12-26  
js 牛人!
  相关解决方案