3

我试图了解在 Internet Explorer 中添加 addEventListener 时的操作true或操作。false根据微软的说法是useCapture。如果我添加一个事件,例如:

element.addEventListener('click', function_name, true);

它似乎没有改变任何东西,监听器仍然有效。谁能解释一下useCapture参数的用途?

4

1 回答 1

13

它是可选useCapture参数,用于指定要为其添加事件处理程序的事件阶段:

事件分两个阶段处理:捕获和冒泡。在捕获阶段,事件在被分派到对象层次结构中较低的事件目标之前被分派给父对象。在冒泡阶段,事件首先被分派给目标元素,然后是父元素。您可以为任一事件阶段注册事件处理程序。

true 为捕获阶段注册事件处理程序。

false 注册冒泡阶段的事件处理程序。

您可以在此处阅读 eventPhase 文档:http: //msdn.microsoft.com/en-gb/library/ie/ff974944 (v=vs.85).aspx

编辑:

请阅读以下内容,通过清晰的示例描述通过冒泡和捕获定义的事件顺序。http://www.quirksmode.org/js/events_order.html

于 2012-12-20T06:15:16.477 回答