如何修复firefox停止javascript时没有响应

时间:2013-11-09 06:06:33

标签: javascript firefox automation

我目前正在创建一个永远运行循环的javascript。但是,几个小时后我的脚本停止工作,它要求我继续或停止脚本。反正有没有解决这个或使用一些自动化工具重新启动Firefox并再次运行JavaScript。因为大部分时间我都远离键盘

2 个答案:

答案 0 :(得分:0)

为防止长时间运行的javascript提示,您需要偶尔让javascript处理其他事件。这样做的经典方法就是使用setTimeout()

function doNextChunkOfWork() {

    // do some work here

    if (moreWorkToDo) {
        setTimeout(doNextChunkofWork, 1);
    }
}

使用setTimeout()可让javascript引擎返回其事件队列并处理其他事件,从而防止长时间运行的脚本警告。


如果你解释了你真正想做的事情,我们或许能够提出更好的选择。如果你正在进行某种无限循环,浏览器中的javascript意味着是一个事件驱动的环境,其中通常的机制是创建事件处理程序并让事件触发代码运行。它不适用于无限循环轮询某事。

答案 1 :(得分:0)

id强烈建议不要使用任何类型的无限循环 - 这样做只会引发麻烦。相反,你想要研究使用javascript的setTimeout()和/或setInterval()函数...允许你指定每隔X毫秒运行一段代码

你可以在这里找到文档

setTimeout()

setInterval()