WEBAPI.3

事件流包括捕获和冒泡两个阶段,冒泡是事件从子元素向父元素传播的过程。阻止冒泡可以使用`event.stopPropagation()`,而`event.preventDefault()`可阻止默认行为。事件委托利用冒泡特性提高程序效率,通过在父元素上注册事件来处理子元素的事件,通过`event.target`判断触发元素。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

事件流

两个阶段

事件流,指的是事件完整执行过程中的流动路径

两个阶段,捕获和冒泡

事件捕获(一般不常用)

事件冒泡()

一个事件被触发的时候,同样的事件在该元素的祖先元素下依次触发,这一过程被叫做冒泡

阻止冒泡

目标,能够写出,阻止冒泡的代码

问题:因为默认有冒泡模式的存在,所以容易事件影响到父级元素

需求,限定在元素之内,阻止冒泡

前提,阻止事件冒泡,需要拿到事件对象

语法.事件对象.stopPropagation()

注意。此方法可以阻止事件流动传播,不光在冒泡事件有用,在捕获事件也有用

解绑事件

on事件方式,由于on事件为赋值的方式,直接使其等于null

对于addEventLister方式,必须使用 removeEventLister事件类型,事件处理函数获取捕获或者冒泡阶段

注,匿名函数无法被解绑

鼠标经过事件

mouseover和mouseout会有冒泡效果

mouseenter和mouseleave没有冒泡效果(推荐)

事件委托

优点:事件流的特征,解决一些实际技巧,减少注册次数,提高程序效率

原理:事件委托,其实使用了事件冒泡的特点

        给父元素注册事件,触发子元素时,会冒泡到父元素身上,从而触发父元素事件

       需要在监听事件中传递e,

       e.target为选中元素

       e.target.tagName判断标签的种类

1.4阻止冒泡

我们某些情况,要阻止默认行为的发生,比如阻止链接的跳转和表单域的跳转

阻止冒泡 e.stopPropagation()

阻止默认行为语法:e.preventDefault()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值