我试图在setTimeout上创建一个IE9,但它仍然抛出一个“无效参数”异常.
这是我的代码:
var timeout;
timeout = setTimeout((function(s_text){
alert(s_text);
})('Hello'), 1000);有人有线索吗?
发布于 2016-10-06 14:46:53
您正在实现的方法将不起作用。您使用的是将立即执行的生命:
(function(s_text){
alert(s_text);
})('Hello')“你好”会被通知的。但是,由于该方法不返回任何内容,所以您将不使用任何内容调用超时。
timeout = setTimeout(/*undefined or null*/, 1000);所以这就是问题所在。
编辑:如果您想使用一个已经存在于作用域之外的变量,只要它是在父作用域中定义的,函数就可以直接使用它:
var timeout;
var alert_text = "hello";
timeout = setTimeout(function(){
alert(alert_text);
}, 1000);https://stackoverflow.com/questions/39898995
复制相似问题