当前位置:Gxlcms > JavaScript > jQuery阻止事件冒泡实例分析

jQuery阻止事件冒泡实例分析

时间:2021-07-01 10:21:17 帮助过:14人阅读

这篇文章主要介绍了jQuery阻止事件冒泡的方法,结合实例形式分析了jQuery阻止事件冒泡的原理、常用实现方法,并结合完整实例形式分析了jQuery阻止事件冒泡的相关操作技巧,需要的朋友可以参考下

本文实例讲述了jQuery阻止事件冒泡。分享给大家供大家参考,具体如下:

我们在平时的开发过程中,肯定会遇到在一个p(这个p可以是元素)包裹一个p的情况,但是呢,在这两个p上都添加了事件,如果点击里面的p我们希望处理这个p的事件,但是呢,我们不希望外层的p的事件也执行,这时候我们就要用到阻止冒泡。

通俗点来说吧,你在家里看电视,躲在自己的小房间,但是你不希望声音传到隔壁父母的耳朵里,这时候,你可能躲在被窝里,或者墙壁的隔音效果很好,阻隔声音可以理解为阻止冒泡。

阻止事件冒泡的三种手段

1、return false:可以阻止默认事件和冒泡事件

2、event.stopPropagation/IE下event.cancelBubble = true;:可以阻止冒泡事件但是允许默认事件

3、event.preventDefault();/IE下event.returnValue = false:可以阻止默认事件但是允许冒泡事件

上面的三种方法运用在不同的场景,可以合理运用,下面是代码,可以自己做一些测试:

  1. <!DOCTYPE html>
  2. <html>
  3. <head lang="en">
  4. <meta charset="UTF-8">
  5. <title>jQuery阻止冒泡</title>
  6. <style>
  7. .p1{
  8. width: 140px;
  9. border: 1px solid blue;
  10. }
  11. .p2{
  12. width: 100px;
  13. height: 100px;
  14. margin: 20px;
  15. border: 1px solid red;
  16. }
  17. </style>
  18. </head>
  19. <body>
  20. <p class="p1">
  21. <p class="p2">
  22. 点我呀!!!!
  23. </p>
  24. </p>
  25. <a href="http:www.baidu.com" rel="external nofollow" id="a1">百度</a>
  26. <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
  27. <script>
  28. $('.p1').bind('click',function(){
  29. alert("p1");
  30. });
  31. $('.p2').bind('click',function(){
  32. alert("p2");
  33. // return false;//也可以通过return false 阻止冒泡
  34. if(window.event){//IE下阻止冒泡
  35. event.cancelBubble = true;
  36. }else{
  37. event.stopPropagation();
  38. }
  39. });
  40. $('#a1').bind('click',function(){
  41. if(window.event){//IE下阻止默认事件
  42. event.returnValue = false;
  43. }else{
  44. event.preventDefault();
  45. }
  46. alert("我是链接");
  47. //return false;//如果不添加任何阻止事件,先弹框,后跳转,我们可以通过return false阻止跳转
  48. });
  49. </script>
  50. </body>
  51. </html>

运行结果:

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

基于Jquery easyui 选中特定的tab

有关jquery与DOM节点操作方法和属性记录

利用jQuery实现WordPress中@的ID悬浮显示评论内容

以上就是jQuery阻止事件冒泡实例分析的详细内容,更多请关注Gxl网其它相关文章!

人气教程排行