javascript - 单击事件未触发,但鼠标悬停工作
问题描述
我在我的项目中使用 Vue JS 并找到了一些绊脚石。
我用过:
<input v-model="spam" @keyup="spamegg=true;" @blur="spamegg=false;" />
<div v-if="spamegg" class="someclass">
<a v-for="str in arr" @click.prevent="foobar(); barbaz();" href="#">{{ str }}</a>
</div>
但该click
事件没有被触发。
我的foobar
方法包含:
foobar: function() {
console.log('clicked');
}
功能也是如此barbaz
。
有趣的是我已经检查了@mouseover
事件及其正常工作。
FWIW,div
就 CSS 而言,实际上是一个下拉列表。
如果您需要任何进一步的信息,请告诉我。
解决方案
是的,所以我在 jsfiddle 中尝试了你的例子,首先@blur
处理程序中有一个错字,你spmaegg
把spamegg
. 但是,即使修复了此问题,点击事件也无法正确注册。删除模糊事件可以让他们正确注册。我认为这是因为模糊发生在 mousedown 上,但 click 事件直到 mouseup 之后才会被触发,因此包含链接的 div 实际上在您完全点击之前就消失了。不幸的是,似乎您需要一种新的下拉菜单机制,可能是输入元素周围的一些容器和侦听模糊事件的链接列表,这样单击链接列表就不会模糊容器并且它将保持打开状态。
作为参考,这是我删除模糊处理的小提琴,您可以看到控制台输出正确触发:https ://jsfiddle.net/L1khuca2/
推荐阅读
- azure - 在存在扩展时重置 Azure VM 规模集上的密码
- r - R中基于时间序列和组的数据分区
- vb.net - 饼图中的标签重叠
- c# - Chrome selenium 更改配置文件和下载目录
- visual-studio-code - 打开时 VS Code 空白屏幕
- python - 如何使用 Python 在 Visual Studio 中显示 matplotlib 图像
- java - 如何在使用 tabnine 时还显示 eclipse 自动完成建议?
- python - Django 项目中无法识别 HTML 文件
- html - 如何在 HTML 中引用来自不同文件夹的图像(使用 Markdown 时)?
- python - general_functions.write_log_line('globals.reason_codes_on_screen[z]' + globals.reason_codes_on_screen[z]) 行的索引超出范围