在Internet Explorer 8中(在IE7/8模式下也适用于IE9),以下代码会弹出
尝试一下:http://jsfiddle.net/BsvZw/5/ 为什么会发生这种情况?有什么解决方法可以获得实际的
更新:
我正在尝试创建一个
object
和undefined
,而不是预期的function
和类似function() {[native code]}
的内容。alert("typeof window.setTimeout = " + typeof window.setTimeout); // object
alert("window.setTimeout.apply = " + window.setTimeout.apply ); // undefined
尝试一下:http://jsfiddle.net/BsvZw/5/ 为什么会发生这种情况?有什么解决方法可以获得实际的
setTimeout
?更新:
我正在尝试创建一个
setTimeout
的包装器:var _oldSetTimeout = window.setTimeout;
window.setTimeout = function ()
{
// ...
return _oldSetTimeout.apply(this, arguments); // this is place where IE 7/8 says 'Object doesn't support this property or method'
// and _oldSetTimeout looks like an empty object
};