位置: 编程技术 - 正文

详解javascript事件冒泡

编辑:rootadmin

推荐整理分享详解javascript事件冒泡,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

事件是javascript中的核心内容之一,在对事件的应用中不可避免的要涉及到一个重要的概念,那就是事件冒泡,在介绍事件冒泡之前,先介绍一下另一个重要的概念事件流:一.什么是事件流:文档对象模型(DOM)是一个树形结构,可以形象的用下图表示。

详解javascript事件冒泡

如果一个html元素触发事件,那么这个事件就会在DOM树中的触发节点和根节点之间按照一定的顺序传播,所有经过的节点都会接收到被触发的事件,这个传播过程被称之为事件流。按照事件的传播顺序,可以将其分为两类,一种是事件冒泡,一种是事件捕获,这里就涉及到本章要介绍的主题了:1.事件冒泡:所谓的时间冒泡就是当一个元素触发一个事件,事件会像是水泡一样,从触发元素向它的所有父节点传播,一直到根节点都会接收到此事件,如果父元素中注册了相应的事件处理函数,那么尽管事件在子节点触发的,在父元素上注册的事件处理函数同样会被触发。例如在上面图示中,如果触发a元素的onclick事件,那么它的父元素p、document和widow都会接收到此事件,并且如果在相应的父元素注册有时间处理函数,那么此事件处理函数将会执行,看一段代码实例:

以上代码的目的是,当点击相应的单元格的时候就会弹出对应单元格中的内容。但是在上面的实现中并不是为每一个单元格注册onclick事件处理函数,而是将onclick事件处理函数注册于单元格的父元素table上,当点击单元格的时候会触发onclick事件,事件还会从从事件对象向上传播,而table元素恰好有注册的onclick事件处理函数,这个时候就会执行此处理函数,当然这里会设置到传递事件对象参数的问题。所有的浏览器都支持事件冒泡。二.事件捕获:事件捕获和事件冒泡恰好相反,当点击一个元素的时候,事件传播的方向是从根元素到触发元素,IE浏览器并不支持,为了跨浏览器支持,所以默认情况下一般都是使用冒泡型事件处理模型。2.javascript阻止事件冒泡代码事件冒泡在某些场景非常的有用,但是有时候也是必须要阻止,下面是一段能够兼容所有主流浏览器的阻止事件冒泡的实例代码。代码实例:

以上代码可以阻止事件冒泡,下面对代码做一下简单注释:二、代码注释:

1.function stopBubble(e) {},此函数用来阻止事件冒泡,参数是个事件对象。 2. if(e&&e.stopPropagation){e.stopPropagation();},判断是否支持stopPropagation,如果支持就使用e.stopPropagation()。stopPropagation()函数IE和IE以下浏览器不支持。 3.window.event.cancelBubble=true,当前IE浏览器使用这个可以阻止事件冒泡。

标签: 详解javascript事件冒泡

本文链接地址:https://www.jiuchutong.com/biancheng/383764.html 转载请保留说明!

上一篇:js父页面中使用子页面的方法(js获取父窗口)

下一篇:实例讲解javascript注册事件处理函数(结婚日课实例讲解)

  • 销售固定资产清单怎么做
  • 专票红冲要不要收回发票联
  • 增值税专票发票代码在哪里看
  • 季度申报残保金怎么填写
  • 购进的库存商品转自用需要开发票吗
  • 同一控制企业合并的特征包括
  • 自建模具怎么做账
  • 个人减税具体政策
  • 追加的固定资产当月计提折旧吗
  • 以前年度已交增值税额
  • 不属于抵扣范围的是什么
  • 企业所得税收入是什么意思
  • 机动车销售统一票据可以抵扣吗
  • 工会筹备金怎么改成工会经费
  • 工行代收资金清算过渡户是什么?
  • 物业收租金必须要发票吗
  • 实收资本记错账如何调整账面价值
  • 收到汽车保险赔款怎么做账
  • 应收账款应计利息公式如何理解
  • 咨询费属于什么大类
  • 纳税信用等级是自动判定吗
  • 确认无法回收的应收账款会计分录
  • 外币财务报表折算未分配利润采用什么汇率
  • 存货跌价准备的金额
  • 期间费用率的意义
  • 无形资产入账摊销
  • linux系统的
  • 鸿蒙系统怎么安装电脑
  • 购买土地前期费用怎么入账
  • php图片叠加
  • 企业所得税季度申报表营业收入怎么填写
  • 企业经营状态有哪几种
  • 职工报销医药费属于什么会计科目
  • 购进的产品样品怎么入账
  • nodejs.org
  • 将本月发生的制造费用在甲、乙产品之间
  • 异地提供建筑服务预缴
  • 办理外经证缴税流程
  • mysql主从同步的优点
  • 织梦网站老是被挂马
  • SQLite数据库常用语句及MAC上的SQLite可视化工具MeasSQLlite使用方法
  • 电商行业退货退款流程
  • 主管盾和制单盾是是转账使用的U盾吗?
  • 小规模纳税人怎么开专票
  • 普通发票需要做合同才能开吗
  • 进项税大于销项税怎么做分录
  • 兼职人员的工资需要发票吗
  • 哪些票据属于会计票据
  • 小规模公司购买汽车会计分录
  • 免抵退税和留抵退税计算题
  • 转让股权取得的收入是营业收入吗
  • 附加税减免政策2023
  • 收购股权如何做分录
  • 固定资产一旦处于什么状态
  • 酒店营业额下降的原因
  • 小规模纳税人如何计算增值税
  • 修改企业账套的步骤
  • 商业企业购进商品的分录
  • mysql8.0二进制安装
  • Linux下Mysql5.7.19卸载方法
  • 轻轻松松在树枝上摘果子用什么成语
  • solaris修改时间
  • 将程序桌面图标放到桌面
  • win7如何设置搜索包含文件内容
  • cyb2k.exe是安全进程吗 cyb2k进程危险吗
  • win8系统切换桌面
  • rtk api error=3
  • win8系统开启摄像头权限
  • linux源码包
  • liunx改时间命令
  • WIN10任务栏时间不动
  • perl tr函数
  • 获取python的运行结果
  • 安卓微信自带聊天背景图片高清
  • 广东省通用机打发票
  • 招聘退役士兵减刑政策
  • 国家税务总局定额发票查验平台官网
  • 城镇土地使用税暂行条例
  • 依法行政的观念
  • 用户卡,税控卡怎么办理
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设