位置: 编程技术 - 正文

详解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万
  • 我公司租了个人的房子如何入账
  • 劳务报酬支出 怎么做账
  • 金融业产值和金融业增加值有什么不同
  • 工会经费按什么交
  • 公对私转账没有到账怎么查询
  • 个人借款给公司利息收入要交税吗
  • 劳务分期收款税率是多少
  • 现金支票提取现金备用
  • 金税盘的进项发票怎么导出
  • 冲减上年的所得税费用入什么科目?
  • 公司作为承租方需要交房产税吗
  • 哪些发票可以进账认证
  • 工程个人所得税扣除标准是多少
  • 单位统一为员工办的银行卡属于对公账户吗
  • 增值税纳税义务人
  • 卖废品收入没开票怎么办
  • 公司开一般户弊端
  • 视同销售收入计入会计利润中吗
  • 预提费用和应付利息一样吗
  • 电梯维修公司发展前景
  • 所得税汇算清缴补税的会计处理
  • 购买机器设备配件账务处理
  • 设置ahci模式后,开不了机
  • 已入账未抵扣的发票开红字发票
  • 科普笔记本电脑怎样
  • 汽车维修的发票的购买方
  • SetPoint.exe - SetPoint是什么进程 有什么用
  • win10点击网络属性没反应
  • 实物折扣例题
  • 广电默认网关是多少
  • 基于什么意思
  • vue中computed和watch区别
  • 语义特征的语法学概念
  • ai与自动化有什么区别
  • 金蝶k3现金流量表编制如何生成数据
  • 装修费摊销费计算公式
  • 金银首饰包装物消费税
  • 企业提前还贷为什么违约
  • 税种分类及其税率
  • 一般整形医院的药在哪进货
  • MySQL数据库远程登录
  • 银行手续费已扣发票未开的账务处理
  • 文化服务要交文化部门吗
  • 应收账款核算流程
  • 单位租的个人房子需要采集房产税源吗
  • 食堂员工私自拿东西怎么办
  • 银行备付金账户是什么帐户
  • 开发成本期末如何结转
  • 高新技术企业研发费用归集
  • 固定资产清理如何做账
  • 旅游费计入什么会计科目
  • 股权转让如何办理
  • 收取招标代理费的规定
  • 飞机票没有发票只有行程单
  • 年末待处理财产损益有余额怎么办
  • 重装机兵
  • ios 数据库版本升级
  • mysql总是安装失败
  • mysql使用or会索引
  • mysqlvarchar汉字
  • linux十大常用软件
  • wps2019视频
  • win7系统修复工具在哪
  • win8系统与win10哪个好
  • win7资源管理器怎么打开
  • [置顶]电影名字《收件人不详》
  • Unity3D面试题整合
  • node远程ssh
  • 夜间模式图
  • jquery获取文件大小
  • jquery22
  • substrate框架原理
  • python讲解
  • 智行火车票电子报销凭证
  • 企业以自有物业为单位
  • 设区市是哪里
  • 申报地税的流程图
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设