本文实例讲述了jQuery阻止事件冒泡。分享给大家供大家参考,具体如下:
我们在平时的开发过程中,肯定会遇到在一个div(这个div可以是元素)包裹一个div的情况,但是呢,在这两个div上都添加了事件,如果点击里面的div我们希望处理这个div的事件,但是呢,我们不希望外层的div的事件也执行,这时候我们就要用到阻止冒泡。
通俗点来说吧,你在家里看电视,躲在自己的小房间,但是你不希望声音传到隔壁父母的耳朵里,这时候,你可能躲在被窝里,或者墙壁的隔音效果很好,阻隔声音可以理解为阻止冒泡。
阻止事件冒泡的三种手段
1、return false:可以阻止默认事件和冒泡事件
2、event.stopPropagation/IE下event.cancelBubble = true;:可以阻止冒泡事件但是允许默认事件
3、event.preventDefault();/IE下event.returnValue = false:可以阻止默认事件但是允许冒泡事件
上面的三种方法运用在不同的场景,可以合理运用,下面是代码,可以自己做一些测试:
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>jQuery阻止冒泡</title> <style> .div1{ width: 140px; border: 1px solid blue; } .div2{ width: 100px; height: 100px; margin: 20px; border: 1px solid red; } </style> </head> <body> <div class="div1"> <div class="div2"> 点我呀!!!! </div> </div> <a href="http:www.baidu.com" rel="external nofollow" id="a1">百度</a> <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script> <script> $('.div1').bind('click',function(){ alert("div1"); }); $('.div2').bind('click',function(){ alert("div2"); // return false;//也可以通过return false 阻止冒泡 if(window.event){//IE下阻止冒泡 event.cancelBubble = true; }else{ event.stopPropagation(); } }); $('#a1').bind('click',function(){ if(window.event){//IE下阻止默认事件 event.returnValue = false; }else{ event.preventDefault(); } alert("我是链接"); //return false;//如果不添加任何阻止事件,先弹框,后跳转,我们可以通过return false阻止跳转 }); </script> </body> </html>
使用在线HTML/CSS/JavaScript代码运行工具 http://tools.jb51.net/code/HtmlJsRun测试运行效果如下:
更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery常见事件用法与技巧总结》、《jQuery常用插件及用法总结》、《jQuery操作json数据技巧汇总》、《jQuery扩展技巧总结》、《jQuery常见经典特效汇总》及《jquery选择器用法总结》
希望本文所述对大家jQuery程序设计有所帮助。
本文向大家介绍利用JQuery阻止事件冒泡,包括了利用JQuery阻止事件冒泡的使用技巧和注意事项,需要的朋友参考一下 冒泡事件就是点击子节点,会向上触发父节点,祖先节点的点击事件。 我们在平时的开发过程中,肯定会遇到在一个div(这个div可以是元素)包裹一个div的情况,但是呢,在这两个div上都添加了事件,如果点击里面的div我们希望处理这个div的事件,但是呢,我们不希望外层的div的事件
本文向大家介绍JavaScript阻止事件冒泡示例分享,包括了JavaScript阻止事件冒泡示例分享的使用技巧和注意事项,需要的朋友参考一下 之前遇到事件冒泡的问题,也去网上搜索了一番,结果大部分都是一样的代码,贴来用时也不太顺利。涉及到FF时,可以用 e.stopPropagation(); ,不知怎地我没用成功。不过我发现FF支持e.cancelBubble = true;的写法,经测试可行
本文向大家介绍javascript事件冒泡实例分析,包括了javascript事件冒泡实例分析的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了javascript事件冒泡。分享给大家供大家参考。具体分析如下: 事件冒泡: 如果元素A嵌套在元素B中,那么A被点击不仅A的onclick事件会被触发,B的onclick也会被触发, 触发的顺序是"由内而外".验证:在页面上添加一个table,
本文向大家介绍React中阻止事件冒泡的问题详析,包括了React中阻止事件冒泡的问题详析的使用技巧和注意事项,需要的朋友参考一下 前言 最近在研究react、redux等,网上找了很久都没有完整的答案,索性自己整理下,这篇文章就来给大家介绍了关于React阻止事件冒泡的相关内容,下面话不多说了,来一起看看详细的介绍吧 在正式开始前,先来看看 JS 中事件的触发与事件处理器的执行。 JS 中事件的
本文向大家介绍理解jquery事件冒泡,包括了理解jquery事件冒泡的使用技巧和注意事项,需要的朋友参考一下 一、什么是jquery事件冒泡 在很多教材或者手册都可能会涉及到事件冒泡的概念,老手来说这当然是最基本的概念,但往往对于初学者可能比较陌生或者说从来没有听说过。下面就结合代码实例来简单介绍一下什么是事件冒泡。 代码实例如下: 在以上代码中,我们可能只想点击锚点后弹出“我是third”,但
本文向大家介绍jquery关于事件冒泡和事件委托的技巧及阻止与允许事件冒泡的三种实现方法,包括了jquery关于事件冒泡和事件委托的技巧及阻止与允许事件冒泡的三种实现方法的使用技巧和注意事项,需要的朋友参考一下 首先,大家都知道,jQuery事件触发时有2种机制,一种是事件委托,另一种是事件冒泡(IE情况暂时不考虑)。拿click事件做例子,先附上一段代码: html: script: 这段代码
本文向大家介绍重新认识vue之事件阻止冒泡的实现,包括了重新认识vue之事件阻止冒泡的实现的使用技巧和注意事项,需要的朋友参考一下 冒泡的表现 近期用vue做了一个需求,大概是同一个区域,点击不同位置有不同的响应函数,还有个总的响应函数,好吧,如下图所示: 他们的DOM结构如下: 冒泡在这里的表现就是当用户点击图中事件1或事件2区域时,事件3也会执行。这是因为时间冒泡机制,导致点击'handleC
本文向大家介绍js事件冒泡、事件捕获和阻止默认事件详解,包括了js事件冒泡、事件捕获和阻止默认事件详解的使用技巧和注意事项,需要的朋友参考一下 谈起JavaScript的 事件,事件冒泡、事件捕获、阻止默认事件这三个话题,无论是面试还是在平时的工作中,都很难避免。 1.事件冒泡 先来看一段代码: html代码 你的本意是触发button这个元素,却连同父元素绑定的事件一同触发。这就是事件冒泡。 如