JavaScript Event学习第八章:事件的顺序
2010-03-30 00:00:00 来源:WEB开发网基本问题很简单。假设你的一个元素包含在另外一个元素中。
1 -----------------------------------<br>| element1 |<br>| ------------------------- |<br>| |element2 | |<br>| ------------------------- |<br>| |<br>-----------------------------------<br>
这两个元素都有onclick事件处理程序。如果用户在element2上面单击那么在元素2和元素1上都触发了单击事件。但是哪个事件先发生呢?哪个事件处理程序会先执行呢?换句话说,事件顺序(event order)是什么呢?
两种模式
毫无疑问的,Netscape和微软在过去那段很糟糕的日子里都做出了自己的决定。
Netscape说element1先发生的。这叫事件捕获(event capturing)。
微软觉得element2先发生的。这叫事件冒泡(event bubbling)。
这两种事件顺序刚好相反。IE只支持事件冒泡。Mozilla,Opera 7和Konqueror两种都支持。早一些的Opear和iCab浏览器两个都不支持。
事件捕获
当你使用事件捕获的时候
1 | |<br>---------------| |-----------------<br>| element1 | | |<br>| --------- --| |----------- |<br>| |element2 \ / | |<br>| ------------------------- |<br>| Event CAPTURING |<br>-----------------------------------<br>
编缉推荐阅读以下文章
- JavaScript Event学习补遗:addEventSimple
- JavaScript Event学习第十一章:按键的检测
- JavaScript Event学习第十章:一些可替换的事件对
- JavaScript Event学习第九章:鼠标事件
- JavaScript Event学习第七章:事件属性
- JavaScript Event学习第六章:事件的访问
- JavaScript Event学习第五章:高级事件注册模型
- JavaScript Event学习第四章:传统的事件注册模型
- JavaScript Event学习第三章:早期的事件处理程序
- JavaScript Event学习第二章:Event
Tags:JavaScript Event 学习
编辑录入:爽爽 [复制链接] [打 印]更多精彩
赞助商链接