首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JS事件冒泡阻止

事件冒泡阻止 当一个元素接收到事件的时候,会把他接收到的事件传给自己的,一直到window,当然其传播的是事件,绑定的执行函数并不会传播,如果没有绑定事件函数,就算传递了事件,也不会有什么表现...DOCTYPE html> JS事件冒泡阻止 div{...DOCTYPE html> JS事件冒泡阻止 li{...有时候我们并不希望事件冒泡而去执行上级节点绑定的事件,这时候就需要阻止事件的冒泡,w3c的方法是e.stopPropagation(),IE则是使用 window.event.cancelBubble...阻止冒泡并不能阻止对象默认行为,例如submit按钮被点击后会提交表单数据,需使用e.preventDefault();阻止默认行为,IE则是window.event.returnValue = false

6.6K20

vue.js中实现阻止事件冒泡

当父子元素中都有点击事件的时候,为了让触发子元素中的事件时,不去触发元素中的事件,可以在子元素事件中添加stop来阻止事件冒泡。....stop 是阻止冒泡行为,不让当前元素的事件继续往外触发,如阻止点击div内部事件,触发div事件 .prevent 是阻止事件本身行为,如阻止超链接的点击跳转,form表单的点击提交 .self 是只有是自己触发的自己才会执行...,如果接受到内部的冒泡事件传递信号触发,会忽略掉这个信号 .capture 是改变js默认的事件机制,默认是冒泡,capture功能是将冒泡改为倾听模式 .once 是将事件设置为只执行一次,如 .click.prevent.once...阻止click事件冒泡(防止触发另一个事件)的方法 使用vue阻止元素的click事件冒泡。...方法二 可以自己写个阻止冒泡事件 然后在发生冒泡的元素中调用这个事件 @click="_stopPropagation($event)" methods:{ _stopPropagation

6.5K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Vue 阻止事件冒泡

    Vue 阻止事件冒泡 by:授客 QQ:1033553122 开发环境 Win 10 element-ui "2.8.2" Vue 2.9.6 事件冒泡简介 如下图,当我们点击页面某个元素时,会产生点击事件...,事件由外到内,逐层递进(事件捕获阶段,途中的1->2->3->4),当目标元素捕捉到目标事件时,会响应事件,并由内到外,逐层往外传递(事件冒泡阶段,图中的4->5->6->7),这便是事件冒泡。...结论 综合实验1,2,3可知,如果想阻止哪个元素的事件冒泡(即事件只针对该元素有效),只要给该元素的事件增加.stop修饰符即可。...常见的屏蔽右键默认菜单 .passive 每次事件产生,浏览器都会去查询一下是否调用了preventDefault阻止该次事件的默认动作,为事件设置.passive修饰符就是为了告诉浏览器,不用查询了,...我们没用preventDefault阻止默认动作。

    3.2K10

    JS事件流、事件冒泡阻止冒泡、事件捕获(一看就懂)

    一个完整的JS事件流是从window开始,最后回到window的一个过程。 事件流被分为三个阶段(1~ 5)捕获过程、(5~ 6)事件触发过程、(6~ 10)冒泡过程。...二、事件冒泡 看了上面的那张图应该对事件冒泡有了大概的了解了吧。总结来说就是: 当一个元素接收到事件的时候 会把他接收到的事件传给自己的,一直到window。...如果它的元素也有某个事件函数,当执行完它的事件函数后,也就会执行它的事件函数。...三、阻止冒泡 1、JS阻止事件冒泡 我们用 e.stopPropagation() 这个方法添加到某事件函数里的末尾,就可以做到阻止冒泡事件。...2、JQ阻止事件冒泡 jq阻止事件冒泡就简单了,直接在事件函数里面添加 return false; 就行了。

    14.6K64

    js 停止事件冒泡 阻止浏览器的默认行为

    在前端开发工作中,由于浏览器兼容性等问题,我们会经常用到“停止事件冒泡”和“阻止浏览器默认行为”。...浏览器默认行为: 在form中按回车键就会提交表单;单击鼠标右键就会弹出context menu. a标签 1..停止事件冒泡 JavaScript代码 1 //如果提供了事件对象,则这是一个非IE浏览器...7 window.event.cancelBubble = true; 8 return false; 2.阻止浏览器的默认行为 JavaScript代码 1 element.onclick =...return false; } 但是在使用return false时必须注意: 1、jQuery有自己的事件处理层,也对处理程序做了封装,如果事件处理程序返回false,事件冒泡和浏览器默认事件都会被阻止...2、使用原生javaScript,在事件处理程序中返回false只会阻止浏览器默认行为,而事件冒泡依然存在。 3、浏览器默认行为和事件冒泡是相互独立的。阻止事件冒泡不会影响默认行为,反之亦然。

    5.3K120

    jquery 事件冒泡阻止事件冒泡 - event.stopPropagation()

    什么是事件冒泡 在一个对象上触发某类事件(比如单击onclick事件),如果此对象定义了此事件的处理程序,那么此事件就会调用这个处理程序,如果没有定义此事件处理程序或者事件返回true,那么这个事件会向这个对象的对象传播...,从里到外,直至它被处理(对象所有同类事件都将被激活),或者它到达了对象层次的最顶层,即document对象(有些浏览器是window)。...事件冒泡的作用 事件冒泡允许多个操作被集中处理(把事件处理器添加到一个元素上,避免把事件处理器添加到多个子元素上),它还可以让你在对象层的不同级别捕获事件。...好了,现在黄色的div已经跟两个的元素位置不重叠了。再次点击看看,如下: ? ? ? 事件冒泡示例的结论 可以看出点击黄色div,依然会依次弹出三个alert()。...事件冒泡机制有时候是不需要的,需要阻止掉,通过 event.stopPropagation() 来阻止 阻止上面点击黄色div的click()冒泡传递 ?

    6K41

    as3.0中如何阻止事件冒泡?

    } } 鼠标点击最小的矩形后,输出如下: _sub_child.MOUSE_DOWN _child.MOUSE_DOWN _container.MOUSE_DOWN 相当于点一个,触发了三个,要想阻止事件冒泡..._child.addEventListener(MouseEvent.MOUSE_DOWN,childMouseDownHandler); //注意:这里同时添加了二个监听,并设置了优点(...subChildMouseDownHandler2的优先高于subChildMouseDownHandler1) _sub_child.addEventListener(MouseEvent.MOUSE_DOWN...sub_child.MOUSE_DOWN_2 _sub_child.MOUSE_DOWN_1 小结:如果某对象的一个事件同时添加多个监听,stopPropagation将把该事件注册的所有监听处理函数执行完后,再阻止该事件继续向上冒泡...;而stopImmediatePropagation方法将本次处理函数执行完后就立即阻止事件继续向上冒泡(即同一事件的其它监听函数将不会执行)。

    1.6K60

    jquery - 页面弹框 - 阻止事件冒泡示例

    DOCTYPE html> <script type="text/javascript" src="jquery-3.4.0.min.<em>js</em>...解决#btn的事件<em>冒泡</em>,使用return false; ? 在<em>阻止</em>了#btn按钮的click()事件<em>冒泡</em>到$(document)之后,那么弹框就可以正常显示了。...这个思路不涉及事件<em>冒泡</em>的<em>阻止</em>,但是属于同一个click()方法的<em>阻止</em>,因为点击$(document)的click()事件应该不会<em>冒泡</em>到它下面的元素.pop,不过可以在这里验证一下。...在这个验证的过程中,更加确认了刚才在.pop使用return false;的确是用来<em>阻止</em>click()的<em>冒泡</em>至$(document)的。...DOCTYPE html> <script type="text/javascript" src="jquery-3.4.0.min.<em>js</em>

    3.3K10
    领券