Javascript 每x秒重复一次代码,但如果[insert check here]
这是一篇后续文章,我发现了如何使代码每x秒重复一次。是否有可能制作一个可以改变这一点的事件?也就是说,我有一个复选框,用来控制是否重复,所以我想我需要这样的东西:Javascript 每x秒重复一次代码,但如果[insert check here],javascript,jquery,Javascript,Jquery,这是一篇后续文章,我发现了如何使代码每x秒重复一次。是否有可能制作一个可以改变这一点的事件?也就是说,我有一个复选框,用来控制是否重复,所以我想我需要这样的东西: $(checkbox).bind("change", function() { switch(whether if it is ticked or not) { case [ticked]: // Make the code repeat, while preserving the ab
$(checkbox).bind("change", function() {
switch(whether if it is ticked or not) {
case [ticked]:
// Make the code repeat, while preserving the ability to stop it repeating
case [unticked]:
// Make the code stop repeating, while preserving the ability to start again
}
});
我不知道我能在这些情况下做些什么。您可以通过将setInterval函数指定给一个变量来实现
var interval = setInterval(function() { }, 1000);
然后你可以停止设置间隔
clearInterval(interval);
p、 美国。
要开始间隔,需要调用var interval=setIntervalfunction{},1000;同样您可以通过将setInterval函数指定给变量来实现
var interval = setInterval(function() { }, 1000);
然后你可以停止设置间隔
clearInterval(interval);
p、 美国。
要开始间隔,需要调用var interval=setIntervalfunction{},1000;再次
您可以停止或启动间隔:
var timer;
function start() {
timer = window.setInterval(function(){
// do something
}, 1000);
}
function stop() {
window.clearInterval(timer);
}
start();
$(checkbox).bind("change", function() {
if ($(this).is(':checked')) {
start();
} else {
stop();
}
});
或者,您可以使用一个标志,使间隔跳过代码:
var enabled = true;
var timer = window.setInterval(function(){
if (!enabled) {
// do something
}
}, 1000);
$(checkbox).bind("change", function() {
enabled = $(this).is(':checked');
});
您可以停止或启动间隔:
var timer;
function start() {
timer = window.setInterval(function(){
// do something
}, 1000);
}
function stop() {
window.clearInterval(timer);
}
start();
$(checkbox).bind("change", function() {
if ($(this).is(':checked')) {
start();
} else {
stop();
}
});
或者,您可以使用一个标志,使间隔跳过代码:
var enabled = true;
var timer = window.setInterval(function(){
if (!enabled) {
// do something
}
}, 1000);
$(checkbox).bind("change", function() {
enabled = $(this).is(':checked');
});
你的另一个问题的答案似乎已经解决了这个问题。clearInterval允许您停止setInterval调用。它允许我重新启动吗?如果您使用上面的一般结构,则每当复选框更改时,它都会出现。我在我的答案中添加了一个演示,希望它能帮助您了解整个情况。看起来您的其他问题的答案已经解决了这一问题。clearInterval允许您停止setInterval调用。它允许我重新启动吗?如果您使用上面的一般结构,则每当复选框更改时,它都会停止。我在回答中添加了一个演示,希望它能帮助您了解整个情况。