javascript, jQuery阻止默认事件和冒泡事件

事件冒泡(event bubbling)

  事件冒泡是指一个元素上的事件被触发,然后这个事件按嵌套顺序在父级元素上触发,直至document根节点。

  例如:

<!DOCTYPE html>
    <html>
    <head>
      <title>Event Bubbling Example</title>
    </head>
    <body>
      <div id="myDiv">Click Me</div>
    </body>
    </html>

如果单击了页面中的<div>元素,那么事件会按以下顺序传播:

  <div> --> <body> --> <html> --> document

  也就是说,click 事件首先在<div>元素上发生,这个元素就是被点击的元素。然后,click事件沿着DOM树向上传播,在每一级节点上都会发生,直至document对象。

  下图展示了事件冒泡的过程:

                   

  js阻止事件冒泡

      var div = document.getElementById("myDiv")

      div.onclick = function(event) {

        event.stopPropagation() 

        // 或者直接使用return false,即阻止了事件冒泡也阻止了默认事件

        // return false

      }

  js阻止默认事件

    1.通过on这种方式的绑定的事件,使用return false:

 

var div = document.getElementById("myDiv")

      div.onclick = function(event) { 

        return false //使用return false,即阻止了事件冒泡也阻止了默认事件

      }

Listener绑定的,使用evevt.preventDefault():

      var div = document.getElementById("myDiv")

      div.addEventListener( " click ",  function(event) { 

        event.preventDefault()

      })
  //jQuery阻止事件冒泡和默认事件

    //阻止事件冒泡:

    $(document).ready(function() {

      $(‘#myDiv‘).click( function(event) {

        event.stopPropagation()

      })

    })

    //阻止默认事件:

    $(document).ready(function() {

      $(‘#myDiv‘).click( function(event) {

        event.preventDefault()

      })

    })

原文地址:https://www.cnblogs.com/johnhery/p/9863842.html

时间: 2024-08-08 10:19:08

javascript, jQuery阻止默认事件和冒泡事件的相关文章

JS 阻止浏览器默认行为和冒泡事件

JS 冒泡事件 首先讲解一下js中preventDefault和stopPropagation两个方法的区别: preventDefault方法的起什么作用呢?我们知道比如<a href="http://www.baidu.com">百度</a>,这是html中最基础的东西,起的作用就是点击百度链接到http://www.baidu.com,这是属于<a>标签的默认行为,而preventDefault方法就是可以阻止它的默认行为的发生而发生其他的事情

dom捕捉事件和冒泡事件-原理与demo测试

先插入一条广告,博主经营一家发饰淘宝店,都是纯手工制作哦,开业冲钻,只为信誉!需要的亲们可以光顾一下!谢谢大家的支持!店名: 小鱼尼莫手工饰品店经营: 发饰.头花.发夹.耳环等(手工制作)网店: http://shop117066935.taobao.com/ 马上开始正题... 先参考一下百度百科对冒泡事件流的解释: ----------不喜欢读文字的同学,可以直接看下面demo,传递顺序简单明了! http://baike.baidu.com/link?url=kaeJHTii_1uVgxD

WPF快速指导10:WPF中的事件及冒泡事件和隧道事件(预览事件)的区别

本文摘要: 1:什么是路由事件: 2:中断事件路由: 3:自定义路由事件: 4:为什么需要自定义路由事件: 5:什么是冒泡事件和预览事件(隧道事件): 1:什么是路由事件 WPF中的事件为路由事件,所谓路由事件,MSDN定义如下: 功能定义:路由事件是一种可以针对元素树中的多个侦听器(而不是仅针对引发该事件的对象)调用处理程序的事件. 实现定义:路由事件是一个 CLR 事件,可以由 RoutedEvent 类的实例提供支持并由 Windows Presentation Foundation (W

js的捕捉事件,冒泡事件

冒泡事件可以查询上个随笔, 捕捉事件正好和冒泡时间正反着 所以这代码我把冒泡事件注释, html和css的内容 <style type="text/css"> #box1{width:500px;height:500px;background:#900;} #box2{width:400px;height:400px;background:#090;} #box3{width:300px;height:300px;background:#009;} #box4{width:

addEventListener 事件监听器 冒泡事件)

addEventListener 事件监听器 (冒泡事件) 1.后面绑定的事件照样会执行 2.不会被覆盖 3.调用者是事件源but.addEventListener 4.参数1,事件名(不带on 点击,移开)("click",fn1) 5.参数2执行函数("click",fn1) 6.参数3事件名(捕获或者冒泡) 7.火狐谷歌IE9+ 支持addEventListener var but=document.getElementsByTagName("but

WPF的路由事件、冒泡事件、隧道事件(预览事件)

原文:WPF的路由事件.冒泡事件.隧道事件(预览事件) 本文摘要: 1:什么是路由事件: 2:中断事件路由: 3:自定义路由事件: 4:为什么需要自定义路由事件: 5:什么是冒泡事件和预览事件(隧道事件): 1:什么是路由事件 WPF中的事件为路由事件,所谓路由事件,MSDN定义如下: 功能定义:路由事件是一种可以针对元素树中的多个侦听器(而不是仅针对引发该事件的对象)调用处理程序的事件. 实现定义:路由事件是一个 CLR 事件,可以由 RoutedEvent 类的实例提供支持并由 Window

阻止默认行为和冒泡

preventDefault方法的起什么作用呢?我们知道比如<a href="http://www.baidu.com">百度</a>,这是html中最基础的东西,起的作用就是点击百度链接到http://www.baidu.com,这是属于<a>标签的默认行为,而preventDefault方法就是可以阻止它的默认行为的发生而发生其他的事情. stopPropagation方法呢?讲stopPropagation方法之前必需先给大家讲解一下js的事件

jQuery阻止默认行为

<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8" /> <title>阻止默认行为</title> <script src="http://apps.bdimg.com/libs/jquery/1.9.1/jquery.min.js" type="text/javascript&q

JavaScript基础 a标记 使用onclick事件阻止默认跳转 onclick事件 与 跳转 ,onclick事件优先执行。

镇场诗: 清心感悟智慧语,不着世间名与利.学水处下纳百川,舍尽贡高我慢意. 学有小成返哺根,愿铸一良心博客.诚心于此写经验,愿见文者得启发.------------------------------------------ code: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"