位置: 编程技术 - 正文

JS传播事件、取消事件默认行为、阻止事件传播详解(事件传播路径)

编辑:rootadmin

推荐整理分享JS传播事件、取消事件默认行为、阻止事件传播详解(事件传播路径),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:事件传播路径,js中事件传播的三个阶段,事件传播路径,js方法传递对象,js事件传参,js中事件传播的三个阶段,js事件传播过程,js中事件传播的三个阶段,内容如对您有帮助,希望把文章链接给更多的朋友!

1.事件处理程序的返回值

通常情况下,返回值false就是告诉浏览器不要执行这个事件相关的默认操作。例如,表单提交按钮的onclick事件处理程序能通过返回false阻止浏览器提交表单,再如a标签的onclick事件处理程序通过返回false阻止跳转href页面。类似地,如果用户输入不合适的字符,输入域上的onkeypress事件处理程序能通过返回false来过滤键盘输入。 事件处理程序的返回值只对通过属性注册的处理程序才有意义。

2.调用顺序

文档元素或其他对象可以为指定事件类型注册多个事件处理程序。当适当的事件发生时,浏览器必须按照如下规则调用所有的事件处理程序:

JS传播事件、取消事件默认行为、阻止事件传播详解(事件传播路径)

通过设置对象属性或HTML属性注册的处理程序一直优先调用。使用addEventListener()注册的处理程序按照它们的注册顺序调用。使用attachEvent()注册的处理程序可能按照任何顺序调用,所以代码不应该依赖于调用顺序

3.事件传播

  在调用在目标元素上注册的事件处理函数后,大部分事件会“冒泡”到DOM树根。调用目标的父元素的事件处理程序,然后调用在目标的祖父元素上注册的事件处理程序。这会一直到Document对象,最后到达Window对象。

  发生在文档元素上的大部分事件都会冒泡,值得注意的例外是focus、blur和scroll事件。文档元素的load事件会冒泡,但它会在Document对象上停止冒泡而不会传播到Window对象。只有当整个文档都加载完毕时才会触发Window对象的load事件。

4.取消事件默认行为、阻止事件传播

在支持addEventListener()的浏览器中,可以通过调用事件对象的preventDefault()方法取消事件的默认操作。IE9之前的IE中,可以通过设置事件对象的returnValue属性为false达到同样的效果。下面一段代码是结合三种技术取消事件:

取消事件相关的默认操作只是事件取消中的一种,我们也能取消事件传播。在支持addEventListener()的浏览器中,可以调用事件对象的stopPropagation()方法以阻止事件的继续传播。如果在同一对象上定义了其他处理程序,剩下的处理程序将依旧被调用,但调用stopPropagation()之后任何其他对象上的事件处理程序将不会被调用。

IE9之前的IE不支持stopPropagation()方法,而是设置事件对象cancelBubble属性为true来实现阻止事件进一步传播。

好了

标签: 事件传播路径

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

上一篇:带你了解session和cookie作用原理区别和用法(带你了解处女座)

下一篇:form表单序列化详解(推荐)(已经序列化的表单怎么再添加)

  • 注册资本没有到位可以注销吗
  • 城建税的计税依据是增值税和消费税的和吗
  • 广告费的税前扣除是多少
  • 银行对账单放前面还是放后面
  • 个税免税收入怎么进行更正申报
  • 公司费用计入什么科目
  • 存货的初始计量应以取得存货的实际成本
  • 手续费和利息属于哪一科目
  • 开技术服务费发票怎么做账
  • 用于集体福利的消费税
  • 来料加工税务账应采取哪种核算方式?
  • 营业范围之外的产品可以出售吗
  • 怎么确定是不是本人
  • 房地产的出租行为属于土地增值税征收范围吗
  • 消费税的征收范围
  • 工程预算调整的主要内容
  • 年度企业所得税申报时间
  • 物业费分摊会计分录
  • 违约金扣除吗
  • 购买银行承兑汇票的会计分录
  • 红字专用发票信息表编号在哪儿
  • 出租房产免收租金合法吗
  • 银行回单如何做凭证
  • u盘加载缓慢
  • 设计费和勘察费的会计科目
  • wordpress访客记录怎么看
  • 排污费计入应交税费吗
  • 增加办税人员需要带什么材料
  • PHP:pg_client_encoding()的用法_PostgreSQL函数
  • 代理进口的增值税如何入账
  • ireike.exe - ireike是什么进程 有什么作用
  • 小米mini路由器mesh
  • 特立尼达和多巴哥
  • 国有资产无偿划转协议
  • 固定资产转让出去租赁收入怎么入账
  • Request获取请求数据中文乱码问题
  • 小规模场地租赁费税率是1还是5
  • 【BEV】TPVFormer复现以及原理
  • php使用for循环实现乘法口诀表
  • python的series
  • 公司法人代表能考公务员吗
  • 没有发票的费用汇算清缴的时候怎么调出来
  • 已认证未抵扣完的进项
  • springbootredis密码加密
  • 员工实际工资
  • 企业季度所得税申报流程
  • 所得税费用期末结转吗
  • 资产负债表是面子
  • 个人所得税劳务所得
  • 发票定额 超过怎么办
  • 无形资产按取得时的什么入账
  • 会计中借方和贷方各指什么
  • 发票开出来对方不走账会怎么样?
  • 制造费用月末怎么结转到生产成本
  • 营改增后物业公司账务处理
  • 实名汽车票抵扣
  • 购入固定资产中的增值税
  • 本月合计结账
  • 最基本的长度单位是什么
  • 登录远程linux系统可以用的方法
  • msng.exe病毒
  • mac的100个必备小技巧
  • msscli.exe - msscli是什么进程 有什么用
  • win10怎么升级到2020
  • win10系统下怎么安装caxa2016电子图板 caxa2016电子图板安装详细图文教程
  • 安装与配置linux操作系统
  • win10推送升级win11
  • shell脚本读取ini文件
  • unity3d快速入门
  • 后台运行bat定时器程序示例分享
  • Git 创建分支提交远程分支详解
  • linux shell 输出到文件
  • python-pip安装
  • adb远程调试工具
  • python中元祖的用法
  • javascript原理详解
  • android实现选择题模式
  • 纳税人分类分级管理四个匹配
  • 重庆电子税务局app下载
  • 淘宝店铺过户后身份证是谁的
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设