vue中div@click不起作用

在Vue中,当外层div设置为position:relative且内部元素使用position:absolute时,点击事件可能无法正常工作。解决这个问题的方法包括:提高外层div的z-index或者使用@click.prevent来阻止事件冒泡。理解并正确使用Vue的事件修饰符如.stop和.prevent对于避免此类问题至关重要。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

vue中div@click不起作用

前提,一个外层div,样式:position: relative;,设置了点击事件@click
里面用了position: absolute;绝对定位,之后点击就不起作用

目前已知两种解决方法
1、最外层div的z-index层级设置比里面绝对定位的大
2、用@click.prevent也是可以的

v-on的指令修饰符
.stop - 调用 event.stopPropagation().prevent - 调用 event.preventDefault().capture - 添加事件侦听器时使用 capture 模式。
.self - 只当事件是从侦听器绑定的元素本身触发时才触发回调。
.native - 监听组件根元素的原生事件。
.once - 只触发一次回调。

@clicl.stop函数会阻止事件向上冒泡
@click.prevent函数会阻止触发dom的原始事件,而去执行特定的事件

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值