我对事件监听器的概念有疑问。下面的两个代码有什么区别
我对真/假部分有疑问。当我在练习代码中用第二个代码替换第一个代码时,没有任何变化。
a.addEventListener("click", modifyText, true);
a.addEventListener("click", modifyText, false);
最佳答案
addEventListener
中的true和false是 bool 值,它指定是否需要捕获事件。
这是语法和detail:
object.addEventListener (eventName, function, useCapture);
eventName:字符串,用于指定要监听的事件的名称。此参数区分大小写!
函数:表示事件发生时要调用的事件监听器函数。
发生事件时,将初始化事件对象并将其作为第一个参数传递给事件处理程序。事件对象的类型取决于当前事件。
useCapture: bool 值,指定是否需要捕获事件。
以下值之一:
false -> Register the event handler for the bubbling phase.
true -> Register the event handler for the capturing phase.
冒泡和捕获阶段:
起泡:,事件对象以相反的顺序从目标的祖先传播,从目标的父对象开始,以defaultView结束。此阶段也称为冒泡阶段。在此阶段注册的事件监听器在达到目标后必须处理该事件。
捕获:事件对象必须通过目标的祖先从defaultView传播到目标的父对象。此阶段也称为捕获阶段。为此阶段注册的事件监听器必须在事件到达目标之前对其进行处理。
有关事件流的更多详细信息: DOM Event Architecture
关于javascript - javascript eventlistener中true和false之间的区别,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14807436/