我在 MSIE 中有以下 JavaScript:
setTimeout(myFunction, 1000, param );
这似乎适用于除 Internet Explorer 之外的所有浏览器。参数只是没有转发到函数。查看调试器,它是未定义的。
最佳答案
Internet Explorer 中的
param
指定 myFunction
中的代码是 JScript、JavaScript 还是 VBscript 另请参阅:MSDN 。它的行为与其他浏览器不同。
以下内容将起作用:
setTimeout(function() {
myFunction(param);
}, 1000);
上一行并不完全模仿 Firefox 等中的 setTimeout
。要传递一个不受 param
变量稍后更新影响的变量,请使用:
setTimeout( (function(param) {
return function() {
myFunction(param);
};
})(param) , 1000);
关于javascript - 设置超时 Internet Explorer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9568248/