gpt4 book ai didi

javascript - Greasemonkey setTimeout 和 setInterval 不触发

转载 作者:行者123 更新时间:2023-11-30 18:32:23 30 4
gpt4 key购买 nike

我正在使用以下代码,我得到的唯一警报是 alert(t)。我已经尝试了 unsafeWindow.setTimeoutwindow.setTimeout 和其他变体,包括 setInterval - 没有任何效果。

$('#on').change(function () { t = setTimeout(function () { starttimer() },1000);timer_on = true;alert(t);  });
function starttimer() {
alert('triggered');
if (timer_on) {
alert('timerstarted');
t = setTimeout(function () { startimer() },1000);
}
}

编辑:也没有错误。脚本继续执行并且 t 具有正常值,只是函数永远不会运行。

最佳答案

不要这样写代码!学会爱jsBeautifierJSLint .

您使用的是什么版本的 FF 和 Greasemonkey?某些组合在计时器和/或事件监听器内部的警报方面存在问题。

无论如何,$('#time').val ()可能不存在或不是您认为的那样。是否$('#time')引用<input>

试试这段代码:

// t and timer_on are global variables.

$('#on').change ( function () {
var timeVal = $('#time').val () || 1; //-- Account for empty and NaN
timeVal = parseInt (timeVal, 10) * 1000;

alert ('Time val = ' + timeVal);
t = setTimeout (starttimer, timeVal);
timer_on = true;
alert (t);
} );

function starttimer () {
alert ('triggered');
if (timer_on) {
alert ('timerstarted');
var timeVal = $('#time').val () || 1;
timeVal = parseInt (timeVal, 10) * 1000;

alert ('Time val = ' + timeVal);
t = setTimeout (starttimer, timeVal);
}
}

关于javascript - Greasemonkey setTimeout 和 setInterval 不触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9246130/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com