javascript - v-on :click and event triggering on inner elements

标签 javascript vue.js vuejs2

我有一个使用以下标记设置的选项卡列表:

<li v-on:click.stop="changeTab()" id="bookings">
    <i class="fa fa-scissors" aria-hidden="true"></i> <span>Bookings</span>
</li>

changeTab() 方法是:

changeTab: function() {
    window.location.hash = this.activeTab = event.srcElement.id;
}

这里的问题是,如果我单击内部元素 i/span,它会设置不正确的 ID(无)及其 srcElement。现在有办法允许这种情况发生吗?我可以让包装器成为唯一被收听的点击吗?

最佳答案

使用 event.currentTarget.id 代替 event.srcElement.id

关于javascript - v-on :click and event triggering on inner elements,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46561842/

相关文章:

vue.js - 具有外部模板和样式的 Vue 组件?

javascript - 如何使用带有文本而不是 null/数字的 VuetifyJS 时间选择器组件?

javascript - 是否可以检测文本何时换行?

javascript - Vue 组件位于另一个组件中

javascript - Div 不能正常扩展

javascript - 避免直接修改 prop,因为值会被覆盖

vue.js - 如何在 nuxt.js 中使用 gtag.js?

javascript - Vuejs 和 Laravel : How to use http get to pass an array to Laravel controller

javascript - => 在 JavaScript 中是什么意思? (等于大于)

javascript - 如何将 $.get 中的数据分配给变量,或读取responseText