UR9*_*82T 2 javascript function dom-events
我有以下代码,我向文档添加了一个事件侦听器,然后将其删除。
document.addEventListener("keypress", gameStart);
function gameStart() {
document.querySelector("h1").innerHTML = "Level 1";
document.querySelector("h2").style.visibility = "hidden";
document.removeEventListener("keypress", gameStart);
}
Run Code Online (Sandbox Code Playgroud)
我无法理解如何在 gameStart() 本身定义内的 removeEventListener 方法中回调 gameStart。这对我来说似乎是循环的,但我觉得我在这里误解了一些基本的东西。我错过了什么?
在removeEventListener
文档中我们可以看到:
Run Code Online (Sandbox Code Playgroud)target.removeEventListener(type, listener[, options]); target.removeEventListener(type, listener[, useCapture]);
...
监听
的EventListener
事件处理程序的函数从事件目标移除。
该EventListener
函数(在您的情况下gameStart
)在调用时不会被调用removeEventListener
,因此没有任何循环调用或递归,它被传递给removeEventListener
以便可以从该事件中取消注册该函数。
归档时间: |
|
查看次数: |
231 次 |
最近记录: |