尽管浏览器按预期执行了功能'dummyFunc()',但使用以下代码片段响应窗口调整大小事件时,我在IE8中遇到了脚本错误:

var jq = jQuery.noConflict();
var resizeTimer;
  jq(window).resize(function() {
      clearTimeout(resizeTimer);
      //resizeTimer = setTimeout(reloadSlider(), 100, 'JavaScript');
      resizeTimer = setTimeout(dummyFunc(), 100, 'JavaScript');
  });

function dummyFunc() {
    alert('hurra');
}


因此,问题不在于浏览器不会发出警报,而是问题在于Internet Explorer中显示“脚本错误”消息,这很不好。我将很感谢有关如何摆脱错误消息的任何提示。

谢谢

最佳答案

dummyFunc()更改为dummyFunc。有了它,您将立即执行该函数,然后将undefined(函数调用的结果)传递给setTimeout

您想改为传递对该函数的引用:

resizeTimer = setTimeout(dummyFunc, 100, 'JavaScript');

09-11 19:00