VUE 点击事件(父子层级元素点击时踩坑记录)
Posted 咩咩阳
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VUE 点击事件(父子层级元素点击时踩坑记录)相关的知识,希望对你有一定的参考价值。
<ul> <li @click="fatherClick"> <div @click.stop="childClick"> </div> </li> </ul>
var vm_target = new Vue({ el: ‘#vm_target‘, data: { }, methods:{ /**父元素点击事件**/ fatherClick:function(event){ var el1 = event.currentTarget; var el2 = event.target; },
childClick:function(event){
} }, created:function(){ } });
在JS中,event.currentTarget获取到的是click事件绑定的DOM对象,event.target获取到的为当前所点击的DOM对象。
若绑定了一个父级元素后,点击子元素时,会触发父元素的点击事件,若需要点击子元素时不触发父元素事件,有两种方法:
1、在父元素中判断event.currentTarget == event.target是否为true
editTarget:function(event){ var el1 = event.currentTarget; var el2 = event.target; if(el1 == el2){ //do something } }
2、在子元素中,绑定一个阻止冒泡的点击事件 @click.stop
以上是关于VUE 点击事件(父子层级元素点击时踩坑记录)的主要内容,如果未能解决你的问题,请参考以下文章