【问题标题】:What is the purpose of the object.addEventListener's useCapture parameter? [duplicate]object.addEventListener 的 useCapture 参数的用途是什么? [复制]
【发布时间】:2012-12-07 15:04:51
【问题描述】:

我想了解在 Internet Explorer 中添加 addEventListener 时 truefalse 的作用。根据微软的说法,它是useCapture。如果我添加一个事件,例如:

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

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

【问题讨论】:

    标签: javascript internet-explorer addeventlistener


    【解决方案1】:

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

    事件分两个阶段处理:捕获和冒泡。在此期间 捕获阶段,事件在它们之前被分派给父对象 被分派到对象中较低的事件目标 等级制度。在冒泡阶段,事件被分派到目标 首先是元素,然后是父元素。您可以注册活动 任一事件阶段的处理程序。

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

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

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

    编辑:

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

    【讨论】:

    • 嗨,谢谢你的回复,但这对我一点帮助都没有。我不知道这意味着什么。我想我只是不在乎,使用 true 似乎有效,谢谢您的回复。
    • 我不确定你的意思。如果将 useCapture 设置为 true,则事件使用捕获阶段,如果为 false(默认),则使用冒泡阶段。这意味着什么在我提供的链接中明确定义......无论如何,我添加了另一个更清楚地解释的链接。基本上它是触发事件的执行顺序。
    • @Wayneuser1168636 看到这个回复中的例子,它帮助我理解:stackoverflow.com/questions/7398290/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-07
    • 2018-07-20
    • 2018-12-08
    • 2023-01-28
    • 1970-01-01
    • 2022-11-01
    相关资源
    最近更新 更多