事件

作者: 小7丁 | 来源:发表于2018-08-01 19:47 被阅读22次

    一、解释以下概念:事件传播机制、阻止传播、取消默认事件、事件代理。

    事件传播机制

    • 事件捕获阶段:不太具体的节点更早接收事件,而最具体的元素最后接收事件
    • 处于目标阶段
    • 事件冒泡阶段:事件开始时由最具体的元素接收,然后逐级向上传播到较为不具体的元素
      首先发生的是事件捕获,为截取事件提供机会,然后是实际目标接收事件,最后是冒泡阶段
      [图片上传失败...(image-a7e1d7-1533124053686)]

    阻止传播

    stopPropagation()取消事件进一步捕获或冒泡

    取消默认事件

    preventDefault() 取消事件默认行为

    事件代理

    • 事件代理用了事件冒泡的原理,把事件函数绑定到父元素上,在函数内指定子元素所需之行的方法。
    • 当触发事件时,事件会依次冒泡到父元素上,然后又触发绑定在父元素上的函数。
    • 也就是说指定一个事件处理程序,管理某一类型的所有事情。
      我们来看一下事件代理的步骤:

    1.父元素绑定事件
    2.父元素知道事件的实际发生目标是谁
    3.我们要对目标进行判断,如果是我们需要的元素,则发生回调函数

    优点:
    1.减少与dom的交互次数,提高代码性能
    2.动态生成DOM元素时,可通过事件代理给新增的元素添加事件函数

    二、写一个 Demo,演示事件传播的过程,演示阻止传播的效果。

    demo

    相关文章

      网友评论

          本文标题:事件

          本文链接:https://www.haomeiwen.com/subject/dzarvftx.html