我有使用 key 停止和启动 setInterval 的功能。 它以 S 键开始,以 Z 键结束。
var refreshIntervalId;
window.addEventListener("onkeydown", keyDown,true);
window.addEventListener("keydown", keyDown);
function keyDown() {
var e = window.event;
switch (e.keyCode) {
case 83:
start();
break;
case 90:
stop();
break;
}
}
function start() {
stop();
refreshIntervalId = setInterval(function() {
// code...
},10);
}
function stop() {
if (refreshIntervalId != null) {
clearInterval(refreshIntervalId);
refreshIntervalId = null;
}
}
那么我怎样才能只设置 Z 键来启动和停止 SetInterval 呢? 例如,我按 Z 键它开始,然后我再次按 Z 键它停止! 谁能帮帮我?
最佳答案
像下面这样修改你的代码,
function keyDown() {
var e = window.event;
switch (e.keyCode) {
case 90:
if(refreshIntervalId) {
stop();
}
else {
start();
}
break;
}
}
检查 refreshIntervalId
是否为真值。如果是,则停止间隔,否则启动它。
关于javascript - 如何只设置一键停止/启动setInterval函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35960187/