位置: 编程技术 - 正文

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启动pe装机工具怎么重装系统
  • vue获取本地文件生成流
  • Linux系统中怎么定位到java代码的方法级
  • 库存盘点差异会计分录
  • 完美替身好看吗
  • 梅拉和艾斯德斯
  • nginx ss
  • 竣工结算审计费用在线计算器
  • 小轿车折旧年限
  • 农村土地承包经营权流转合同
  • 视同销售实物出资是否开专票吗
  • 信用证支付方式,银行处理单据时主要关注( )
  • SQL Server中TRUNCATE事务回滚操作方法
  • 使用增值税发票违法吗
  • 减免税款借贷方表示
  • 发票上的金额是含税还是不含税
  • 房产税的纳税义务人
  • 研发人员工资加计扣除以实发
  • 公司分期付款购车怎么做账
  • 现金核算如何进行账务处理
  • 股权转让中土地要否缴纳增值税
  • 购买税控盘费用能全额抵扣吗
  • 打印银行电子流水发到别人邮箱,能看到我的账户余额吗
  • 给业务员的佣金怎么做账
  • 利润分配审计案例
  • 没有销货清单的发票可以报销吗
  • 子公司的亏损能算到母公司吗
  • 其他货币资金存出投资款借方增加还是减少
  • 私企公转私出纳有责任吗
  • sqlbean
  • windows hellopin是什么意思
  • 未知文件怎么删除
  • ultra系统优盘恢复
  • 登录远程linux系统可以用的方法
  • win10系统怎么查询ip
  • centosfind命令
  • centos怎么安装软件包
  • macos终端命令
  • win7旗舰版使用ie8特别卡怎么回事?
  • win8 boot manager
  • win10播放视频的软件
  • win8.1 ie浏览器
  • win10一直显示正在启动
  • unity 3d教程
  • [置顶] rwmfqg
  • 逆向教程推荐知乎
  • 常用批处理命令大全
  • 安装两个linux
  • linux命令sed的用法
  • unity gettype
  • javascript模块化与非模块化开发区别
  • 何为标兵称号
  • 国税软件下载
  • 江苏省国税局局长
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设