位置: 编程技术 - 正文

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表单序列化详解(推荐)(已经序列化的表单怎么再添加)

  • 嵌入式软件产品的增值税即征即退具体实例
  • 水处理产业链
  • 福利费用属于工资吗
  • 关联方需要计提坏账准备吗?
  • 政府会计应付职工薪酬账务处理
  • 在建工程应交税费会计分录
  • 发票开错但已勾选还需要认证吗
  • 金税设备中有上税吗
  • 文化事业建设费减免政策
  • 公司接受投资会计科目
  • 企业成立股东没有实际出资分录怎么写?
  • 资金账簿印花税最新政策2023
  • 接受实物投资的增值税会计核算方法
  • 房地产公司基础设施建设费包括哪些费用
  • 个人营业执照如何办理社保
  • 留抵的进项税可以退吗
  • 分配股利在报表中怎么填
  • 委托代理出口能否办理退税
  • 个税申报月份有误如何调整?
  • 工业企业出售厂房需要预缴税款吗
  • 购买的无形资产入账价值
  • 自产自用产品的会计处理
  • php检测文件是否存在
  • 账户验证因姓名验证错误导致失败
  • 收到租赁发票会计分录怎么做
  • 事业单位接受捐赠固定资产入账
  • 开启资源管理器自动刷新功能
  • 支持h5浏览器
  • 公司从其他公司借个钱怎么做账
  • 辅助生产成本是
  • 企业购进的商品又赠送给客户,怎么做分录呀
  • 前端密码加密
  • 海滨德拉海滩庄园别墅
  • Diffusion-GAN: Training GANs with Diffusion 解读
  • 怎么配置opencv
  • php解释器工作流程
  • php xml转数组
  • vue实现回车登录
  • 企业所得税汇算清缴扣除标准2023
  • css代码基础
  • 城建税退回怎么做分录
  • 食堂购买固定资产会计处理
  • 上一年的成本没入账怎么做
  • 技术人员的工资计入什么费用
  • 蔬菜开发票到哪里开呢?
  • 开具免税的发票,"税率"栏该如何填开?
  • mongodb视频教程
  • 清空表sql语句
  • 小规模纳税人工资要每月申报
  • 小规模纳税人免增值税的政策
  • 单位每个月支付给个人的保洁费如何申报入账
  • 企业出售自用车辆的会计处理
  • 事业单位之间调动难吗
  • 计提租金如何做账务处理
  • 收到发票未抵扣,收票方也可以开红字信息表吗?
  • 500万以下设备一次性扣除
  • 固定资产折旧的会计凭证
  • 金税盘费用不交会怎么样
  • 小企业如何做
  • sqlserver数据库优化的几种方式
  • sql解析框架
  • xp系统弹出广告怎么处理
  • WinXP创建一键静音快捷键(在喇叭消失的情况下实用)
  • ubuntu下添加新用户
  • opengl控制物体移动
  • shell脚本数组的用法
  • 风格的多样性举例说明
  • perl脚本输出变量
  • JavaScript中常用的数据类型有
  • nodejs 代理请求
  • JavaScript fontcolor方法入门实例(按照指定的颜色来显示字符串)
  • imageview tint
  • 矿产资源税的计税依据
  • 200平交多少契税
  • 青椒课堂怎么激活登录
  • 骗取国家出口退税罪
  • 国家级运动员怎么申请
  • 国税发票如何查真伪查询
  • 公司欠税交不起股东责任
  • 通辽这个地方怎么样
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设