【发布时间】:2020-03-11 21:33:07
【问题描述】:
假设我在 vue 中有这个模板:
<p @click="handleParagraphClick">
<span @click="handleSpanClick">Some text</span>
</p>
当我点击跨度时,我还会触发一个段落点击处理程序运行。 jquery有这样的检查来检查冒泡是否触发了点击:
$('#id_of_p').click(function(event) {
if (event.target == this) {
// event was triggered on the body
}
});
当我在 handleParagraphClick(event) 中使用 event.target 时,我得到了对 span 元素的引用。如何获取段落参考以比较跨度event.target 和段落this 变量,如jquery?
更新。
上面的模板是我当前代码的简化版本。我有嵌套组件。带跨度的组件在段落组件中呈现。
【问题讨论】:
-
如果你能得到这些信息,你想做什么?如果您想确保
handleParagraphClick仅在点击<p>时执行,您可以使用@click.self="handleParagraphClick" -
@Phil,我忘记了“self”事件修饰符。所以,是的,它应该可以帮助我解决我的问题。谢谢!
标签: vue.js event-bubbling