我有一段代码,其中用户当他/她按下NumpadEnter
键时,某个功能触发:
document.addEventListener("keyup", function(event) {
if (event.code === "NumpadEnter") {
//some logic here
}
}
现在我想在满足特定条件时触发keyup
函数:
if(flag == true){
//trigger the keyup listener
}
我该怎么做?
不要触发事件。相反,将逻辑放在事件处理程序和其他代码都将调用的单独函数中:
function performAction() {
// logic here
}
document.addEventListener("keyup", function(event) {
if (event.code === "NumpadEnter") {
performAction();
}
}
// Now I want to trigger this keyup function when a certain condition is met:
if (flag == true){
performAction();
}
将keyup侦听器放在标志检查器中。然后,传递一个函数来处理该事件。设置如下所示的函数:
function handleEvent(event) {
if (event.code === "NumpadEnter") {
//some logic here
}
}
if(flag == true){
//trigger the keyup listener
document.addEventListener("keyup", handleEvent)
}