JS IE浏览器事件绑定:HTML事件、dom0事件、dom2事件

本文介绍了在Internet Explorer浏览器中使用DOM2级事件模型进行事件绑定的方法,包括attachEvent和detachEvent的使用技巧,以及它们与标准浏览器事件处理的区别。

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

一、html事件和dom0事件 没有兼容性问题,非IE的dom2事件不能在 IE8及其以下浏览器使用

       报错:对象不支持“addEventListener”属性或方法

二、IE浏览器下的dom2事件绑定

1、语法:元素.attachEvent(type,listener)

2、注意:

  ①事件类型必须有   on

  ②没有事件捕获

  ③按照事件绑定的顺序依次触发    IE9

   ④按照事件绑定的顺序倒序输出    IE8及其以下

   ⑤支持事件冒泡

eg:

var box = document.getElementsByTagName('div')[0];
box.attachEvent('onclick', function () {
console.log('box 被点击了11111');
});

box.attachEvent('onclick', function () {
console.log('box 被点击了222222');

});
box.attachEvent('onclick', function () {
console.log('box 被点击了33333');
});

3、解绑

  ①匿名函数无法解绑

  ②语法:元素名.detachEvent('事件类型',函数名)

eg:

var box = document.getElementsByTagName('div')[0];
var btn = document.getElementsByTagName('button')[0];
function show(){
    console.log('我是一个函数');
}
box.attachEvent('onclick', show);
btn.onclick = function () {
   box.detachEvent('onclick',show);
};
document.body.ondblclick = function () {
    console.log('body被点击了');
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值