阻止事件冒泡的方法

前端结构

<div id="app"><div class="father-box" @click="clickFatherBox">我是父盒子<div class="son-box" @click="clickSonBox">我是子盒子</div></div>
</div>
 methods: {clickSonBox(){alert("子盒子")},clickFatherBox(){alert("父盒子")}
},

事件冒泡:clickSonBox事件发生时clickFatherBox事件也被触发了

此时点击子盒子 对话框弹出两次

方法1:使用js阻止事件冒泡

clickSonBox(e){e.stopPropagation();alert("子盒子")
},//或者clickSonBox(e){e.cancelBubble=truealert("子盒子")},

方法2:使用事件修饰符stop

绑定事件时,使用stop修饰符阻止事件冒泡

<div class="father-box" @click="clickFatherBox">我是父盒子<div class="son-box" @click.stop="clickSonBox">我是子盒子</div>
</div>

方法3:使用事件修饰符self

绑定事件时,使用self修饰符 表示只在本元素被点击时触发

<div class="father-box" @click.self="clickFatherBox">我是父盒子<div class="son-box" @click="clickSonBox">我是子盒子</div></div>
注意:

self修饰符应该在父盒子绑定事件时使用而不是子盒子! 在父盒子事件使用self,点击了子盒子,父盒子的点击事件不会被触发,即事件没有冒泡,

self表示只在当前元素发生事件时,事件才触发

快速了解4种阻止事件冒泡的方法(原生js阻止,vue中使用修饰符阻止)相关推荐

  1. jquery中阻止事件冒泡的方法

    2019独角兽企业重金招聘Python工程师标准>>> 根据<jquery基础教程> 第一种方法:判断事件的"直接"目标是否是自身,如果不是自身,不予 ...

  2. JS_js阻止事件冒泡的方法

    阻止方法有三种: 1.event.stopPropagation(); document.querySelector("#login").addEventListener(&quo ...

  3. Js、Vue阻止事件冒泡行为

    目录 Js阻止事件冒泡行为 Vue阻止事件冒泡行为 以下是Js阻止事件冒泡行为 event.stopPropagation() <!DOCTYPE html> <html lang= ...

  4. js第8章事件案例:获取触发事件的元素,阻止事件冒泡和默认行为的实现、缓动的小球、图片放大特效、按Enter键切换

    目录 1.获取触发事件的元素,阻止事件冒泡和默认行为的实现. (1)获取触发事件的元素 (2)阻止事件冒泡 (3)阻止事件默认行为 2.缓动的小球,实现的原理是通过定时器连续地修改当前DOM元素的某个 ...

  5. 微信小程序阻止事件冒泡

    在vue中阻止事件冒泡的方法使用的event.stopPropagation(); 但微信小程序中事件传递的event却没有stopPropagation()这个方法 解决方案:将绑定事件的bindt ...

  6. android 防止点击事件冒泡,移动端阻止事件冒泡需要注意!

    移动端使用的js插件式zepto和touch,想要在一个大的区域做一个点击事件,但是里面小的区域也有自己的点击事件,就要阻止事件冒泡,但是使用了之后发现不好使,原因是:大的区域使用的事件是移动端的ta ...

  7. 阻止事件冒泡两种方式:event.stopPropagation();和return false;

    jQuery提供了两种方式来阻止事件冒泡. 方式一:event.stopPropagation(); $("#div1").mousedown(function (event) { ...

  8. JQuery 阻止事件冒泡---3种实现方式

    第一种:return false: 缺点:直接返回了函数,函数后面的语句没法执行了: $('.btn').on('click',function(event){do something ...retu ...

  9. jquery阻止事件冒泡的两种方法

    事件的旅程: 当页面上发生一个事件时,每个层次上的DOM元素都有机会处理这个事件.以下面的页面模型为例: 1. <div class="foo">2. <span ...

最新文章

  1. 单元格内多个姓名拆分成一列_EXCEL拆分单元格中的姓名,这都不叫事儿
  2. linux卸载mpfr,Red Hat Linux在安装gcc时遇到的问题汇总
  3. 多目标跟踪:监控领域你必须要了解的算法
  4. git常用命名行总结
  5. 修复SQL Server Compact数据库时遇到找不到指定的模块的异常
  6. Xampp中的apache,tomcat无法启动的问题
  7. Effective C++学习第七天
  8. Hemberg-lab单细胞转录组数据分析(九)- Scater包单细胞过滤
  9. 网页设计个人主页源码_WebSSH - 网页上的SSH终端
  10. java foxpro_java解析FoxPro DBF数据文件
  11. editplus怎么在前后插入字符
  12. Linux挂载windos共享提示error
  13. Python计算IV值
  14. 12款高质量的免费 HTML 网页模板下载
  15. 【SpringBoot整合缓存】-----jetcache以及j2cache篇
  16. APP运营:盘点八款主流 APP 消息推送工具
  17. 拉灯问题(标准答案都是错的!)
  18. 一文让你初步了解壮族——一个奇葩但同样优秀的民族
  19. redis短信发送限制
  20. java 判断fibonacci_Java程序检查给定的数字是否是斐波纳契数

热门文章

  1. flexpaper java 例子_【转载】《Flexpaper二次开发入门教程》(十) Flexpaper简单使用-第一个Flexpaper例子(4.1节) ......
  2. UserScripts Safari 苹果iOS上特别好用且免费的脚本插件,五分钟学会
  3. 【寒假每日一题】棋盘挑战(个人练习)详细题解+推导证明(第十六天)
  4. 男人向狗学习 女人向猫看齐
  5. MediaTek天玑1000发布,5G芯片之争风云再起
  6. Java整数转换一次最大_在Java中以美分(整数)转换美元(大十进制)的最佳方法是什么?...
  7. Linux 解压.gz文件
  8. php aggregate,如何对第三层的字段进行aggregate的group聚合
  9. CSS父级选择器 :has()
  10. GridLayout布局