JavaScript的事件模型概述

1.原始事件模型

属性事件处理模式如下。

(1)基本事件处理。其实大多数人使用的JavaScript事件处理模式都是这种代码方式。

(2)事件类型。分为“输入事件”(如onclick)和“语义事件”(如onsubmint)。

2.标准事件模型

DOM2对其作了标准化。

(1)先由document向目标对象传播,称之为捕捉阶段。

(2)目标对象的事件处理程序运行,称之为事件处理阶段。

(3)从目标对象向document起泡,称之为冒泡阶段。

3.IE事件模型(IE5.5/IE6)

(1)传播过程只起泡,不捕捉。起泡中断方法:widow.event.cabcekBulle=true。

(2)event对象不是事件处理程序的函数参数,而是windw的全局变量。

(3)事件注册函数attachEvent()和反注册函数detachEvent()。

4.Netscape事件模型

null




addEventListener和attachEvent的作用和区别。

(1)支持的浏览器

addEventListener是标准事件模型,在非IE外的主流浏览器使用。attachEvent是IE事件模型,在IE中使用。

(2)处理程序执行阶段

addEventListener有三个参数,第一个为事件类型,第二个为处理函数,第三个表示事件是否支持Capturing。当第三个为true是,在捕获阶段执行;为false时,在冒泡阶段执行。

        attachEvent均在冒泡阶段执行。

(3)作用域

   addEventListener的作用域为元素的作用域,this为element的引用。

    attachEvent的作用域为全局作用域,this为window引用

(4)事件处理程序执行顺序

addEventListener执行顺序与添加顺序一样

attachEvent执行顺序与添加顺序相反

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值