JS event.currentTarget( ) 和 event.target( ) 的区别

JS event.currentTarget( ) 和 event.target( ) 的区别这两个方法都是监听事件触发的目标。区别是,event.currentTarget()会返回当前触发事件的元素;而event.target()会返回触发事件触发的源头元素。用法:可以用来监听触发事件的元素是否事件发生的源头元素。这个源头元素指的是,当我点击子元素,虽然父元素的点击事件也会被触发(冒泡机制),但子元素才是事件的源头元素。event.currentTarget()…

这两个方法都是监听事件触发的目标。区别是,event.currentTarget( ) 会返回当前触发事件的元素;而event.target( ) 会返回触发事件触发的源头元素。

用法:可以用来监听触发事件的元素是否事件发生的源头元素。这个源头元素指的是,当我点击子元素,虽然父元素的点击事件也会被触发(冒泡机制),但子元素才是事件的源头元素。

event.currentTarget( )

返回其监听器触发事件的节点,即当前处理该事件的元素、文档或窗口。包括冒泡和捕获事件。

event.target( )

target 事件属性可返回事件的目标节点(触发该事件的节点,也就是事件发生的源头,事件发生所绑定的那个节点),如生成事件的元素、文档或窗口。也就是说,监听冒泡或者捕获事件的 target,会返回事件发生的那个元素,而不是冒泡或者捕获事件触发的元素。


例子:

 event.currentTarget( )


<div id="app">
  <div class="outer" @click="outer">最外层
    <div class="middle" @click="middle">中间
      <div class="inner" @click="inner">最内层点击我(^_^)</div>
    </div>
  </div>
  <p></p>
</div>

<script type="text/javascript">

  let app = new Vue({
    el: '#app',
    methods: {
      inner: function (e) {
        console.log( '触发了inner 事件'+"  currentTarget:"+e.currentTarget.className)
      },
      middle: function (e) {
        console.log( '触发了middle事件'+"  currentTarget:"+e.currentTarget.className)
      },
      outer: function (e) {
        console.log( '触发了outer事件'+"   currentTarget:"+e.currentTarget.className)
      }
    }
  })

</script>

JS event.currentTarget( ) 和 event.target( ) 的区别


event.target( ) 

<div id="app">
  <div class="outer" @click="outer">最外层
    <div class="middle" @click="middle">中间
      <div class="inner" @click="inner">最内层点击我(^_^)</div>
    </div>
  </div>
  <p></p>
</div>

<script type="text/javascript">

  let app = new Vue({
    el: '#app',
    methods: {
      inner: function (e) {
        console.log( '触发了inner 事件'+"  target:"+e.target.className)
      },
      middle: function (e) {
        console.log( '触发了middle事件'+"  target:"+e.target.className)
      },
      outer: function (e) {
        console.log( '触发了outer事件'+"   target:"+e.target.className)
      }
    }
  })

</script>

 

JS event.currentTarget( ) 和 event.target( ) 的区别

今天的文章JS event.currentTarget( ) 和 event.target( ) 的区别分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/29022.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注