位置: 编程技术 - 正文

详解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注册事件处理函数(结婚日课实例讲解)

  • 运输公司的税率是多少
  • 企业银行贷款报表要求
  • 支票退票怎么做账务处理
  • 生产企业的基础设施是指
  • 劳务费专票需要备注吗
  • 支付增值税税控系统技术维护费用500元
  • 可以税前扣除的商业健康保险有哪些
  • 常见的会计凭证有哪些
  • 政府补贴的内容
  • 开出现金支票属于什么会计科目类别
  • 先收入后开票如何做账
  • 出口退税金额和进项税额不一致
  • 全年一次性奖金个税计算
  • 顺丰的收派服务费可以抵扣吗
  • 其他综合收益影响递延所得税负债吗
  • 股权激励个人所得税计算器
  • 纳税人提供不动产经营租赁增值税征收管理
  • 实收资本有什么税
  • 备查账簿根据企业的实际需要设置没有固定的格式要求
  • 代开专票交的城建税怎么申报附加税
  • 通行费发票怎么开
  • 申请增值税一般计税方法的个体工商户可自
  • 企业收到收入会计分录
  • 测试费怎么入账
  • 所得税招待费用
  • 重装系统出现无效签名
  • macbook设置壁纸后开机变回原样
  • 公允价值变动损益怎么算出来的
  • 防疫物资费用会计处理
  • windows10自带桌面时钟
  • win7系统中如何关闭触摸屏声音
  • 没有桌面和任务栏怎么办
  • 前端get请求传多个参数
  • 外购货物用于职工福利进项税额可以抵扣吗
  • 半成品月末账务处理
  • PHP:oci_field_type()的用法_Oracle函数
  • 查补的增值税能抵留抵吗
  • win7旗舰版系统怎么样
  • 销售方收到购买方的红字信息表
  • 理财的利息收入计入什么科目
  • 集团公司管理费提取办法
  • 科技财政支出的意义
  • 辅助生产成本是
  • 明细分类账余额借贷怎么填
  • 存货非正常损失进项税额转出
  • 承租人经营租赁账务处理
  • 契税计入会计利润总额吗
  • 企业筹建期间
  • 帝国cms调用api接口
  • 耕地占用税如何计算
  • 低值易耗品还需要录入明细吗
  • 详解中国女足出线形势
  • 季度销售额不超过30万元如何纳税
  • 公司没有账套怎么做账
  • 企业所得税汇算清缴操作流程
  • 租赁业发票
  • 代收水电费如何入账
  • 实收资本会变吗?
  • 对于资产负债表日后的非调整事项
  • xp电脑启动项怎么设置启动项
  • linux 删除重复文件
  • win7电脑频繁自动重启是什么原因造成的
  • mac怎么访问windows
  • 有没有软件恢复
  • windows锁屏界面设置
  • 升级win10系统后安装谷歌打不开
  • win10教育版登录
  • Unity3D ugui事件监听机制
  • js中sort排序
  • js中事件的三要素
  • jquery删除所有class
  • android sql语句
  • 深入理解计算机系统
  • 利用Python中的turtle绘制乡村振兴
  • unity5权威讲解
  • js中文本框设置的代码
  • 广东省国家税务局网上办税大厅
  • 出口退税收入怎么做账
  • 如何打印个人所得税证明
  • 建筑施工企业研发中心建设
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设