在VueJS中获取事件侦听器元素而不是子元素



我正在尝试获取在以下代码中附加了事件侦听器的元素。

<div class="navigation-link" id="home" @click="click($event)">
<button class="navigation-link-inner btn-large transparent z-depth-0">
<i class="material-icons left">contact_mail</i>Home
</button>
</div>
<div class="navigation-link" id="cms" @click="click($event)">
<button class="navigation-link-inner btn-large transparent z-depth-0">
<i class="material-icons left">contact_mail</i>CMS
</button>
</div>
<div class="navigation-link" id="contact" @click="click($event)">
<button class="navigation-link-inner btn-large transparent z-depth-0">
<i class="material-icons left">contact_mail</i>Contact
</button>
</div>



但当我点击链接时,我会根据确切的点击位置获得这些元素:

<i class="material-icons left">contact_mail</i>Home
<button class="navigation-link-inner btn-large transparent z-depth-0">
<i class="material-icons left">contact_mail</i>Home
</button>
<div class="navigation-link" id="home">
<button class="navigation-link-inner btn-large transparent z-depth-0">
<i class="material-icons left">contact_mail</i>Home
</button>
</div>



我只想得到这个元素

<div class="navigation-link" id="home">
<button class="navigation-link-inner btn-large transparent z-depth-0">
<i class="material-icons left">contact_mail</i>Home
</button>
</div>

即我已将事件侦听器附加到的父元素。我怎么能拿到这个?有没有一种简单的方法可以做到这一点,只在父级上附加一个事件侦听器,而不是在每个链接上?

为了引用侦听器所附加的元素,应该使用evt.currentTarget而不是evt.target

最新更新