Javascript 重置EventListner?
我的打字测试网站上有这段代码Javascript 重置EventListner?,javascript,Javascript,我的打字测试网站上有这段代码 testArea.addEventListener( "input", () => { // Converting minutes to milliseconds startTimer(userMinutes * 60 * 100); }, { once: true } ); 我需要{once:true}来防止计时器在每个用户输入testArea时启动。 当我单击restart按钮时会出现问题,
testArea.addEventListener(
"input",
() => {
// Converting minutes to milliseconds
startTimer(userMinutes * 60 * 100);
},
{ once: true }
);
我需要{once:true}来防止计时器在每个用户输入testArea时启动。
当我单击restart按钮时会出现问题,因为eventListener已经键入过一次,它在启动计时器后,单击restart按钮不会启动计时器
所以我的问题是,有没有一种方法可以重置eventListener,这样当用户单击“重置按钮”时,它会重置eventListener,这样在用户单击“重置”按钮后计时器就会启动
或者我可以使用不同的DOM来实现这一点
谢谢大家! 创建一个函数并在其中向输入添加事件侦听器事件。然后在
reset
上调用相同的函数并重新连接事件
function reset() {
testArea.removeEventListener();
addEvent();
}
function addEvent() {
testArea.addEventListener(
"input",
() => {
// Converting minutes to milliseconds
startTimer(userMinutes * 60 * 100);
}, {
once: true
}
);
}
}
你试过了吗?
userMinutes*60000
可能是毫秒,但这不是你真正的问题。不要使用{once:true}
,只需设置一个变量,或者使用{once:true}
删除并再次添加事件。我添加了removeEventListener(“输入”,startTime(),false),但它没有做任何事情编辑:所以我忘记使用addEvent计时器,它可以工作,但发生了一个奇怪的错误。当我多次单击重启按钮时,计时器不再停止。。。