DOM事件绑定---DOM0与DOM2

本文详细介绍了DOM事件绑定中的DOM0级和DOM2级事件,包括它们的注册方式、区别以及事件监听。DOM0级事件在所有浏览器中都支持,但只能注册一次;DOM2级事件则支持事件监听,允许多次注册。addEventListener和removeEventListener方法分别用于添加和移除事件监听,同时讨论了事件冒泡和捕获的概念。

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

一、DOM0级事件

1.所有的浏览器都支持

2.事件只能注册一次,后边的会覆盖旧的

3.注册

(1)在html上添加:<div οnclick="alert('hello')"></div> this指向自身

(2)匿名函数:d.onclick = function(){} ; this指向自身

(3)普通函数:οnclick="ok()";

相当于动态调用

this指向自身

没有事件参数e的传递

二、DOM2级事件(事件监听)

1.IE浏览器

(1)attachEvent(event,function) event要加on

(2)detachEvent(event,function)

2.非IE浏览器

(1)addEventListener(event,fuction,userCapture)

 addEventListener("事件名" , "事件处理函数" , "布尔值");

event 不能加句柄on

user Capture 指定捕获还是冒泡(true 捕获 false冒泡)

2)removeEventListener(event,fuction)

 addEventListener("事件名" , "事件处理函数" );

三、DOM0与DOM2的区别

DOM0级事件同一事件只能执行一次,而DOM2级事件同一事件可监听多次

四、事件监听

1. addEventListener()添加事件监听
   使用 addEventListener()方法用于向指定元素添加事件句柄。
   addEventListener("事件名" , "事件处理函数" , "布尔值");

(1)参数event必填,表示监听的事件,例如 click, resize等,不加前缀on的事件。
(2)参数 function必填,表示事件触发后调用的函数,可以是外部定义函数,也可以是匿名函数。不带参数。
(3)参数 useCapture选填,填true或者false,用于描述事件是冒泡还是捕获触发,true表示捕获,默认false表示冒泡。
2. removeEventListener()移除事件监听
(1)使用 removeEventListener()方法来移除 addEventListener() 方法添加的事件句柄。

(2)如果function参数传的是匿名函数,没办法用removeEventListener来移除监听。

3.事件的获取:

事件冒泡:事件由子级传向父级

事件捕获:事件由父级传向子级

 浏览器默认都是冒泡的执行方式

​ 通过 addEventListener 第三个参数来设定获取方式

​ 默认值 false 是 冒泡      true是捕获

​ 一般实际项目中,不定义第三个参数,就使用默认方式,​ 低版本IE,只支持冒泡,不支持捕获,不会报错,只会按照冒泡的顺序执行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值