JavaSript事件冒泡和事件捕获
2018-06-24 01:43:58来源:未知 阅读 ()
事件流描述的是从页面中接收事件的顺序。但当时,浏览器发展到第四代(IE4和Netscape Communicator4)时,IE和Netscape开发团队各自提出了事件流的概念,而且两个顺序流的概念差不多是相反的。如下:
1,事件冒泡:这是IE的事件流,事件冒泡是指:事件开始时,有最具体的元素接收(最具体是指文档中嵌套里面最深的元素),然后逐级地向上传播到不具体的节点(文档)。
2,事件捕获:这是Netscape 提出的事件流,前面说过,两个顺序几乎是相反的,所以事件捕获顺序是由最不具体的节点(文档)接收,逐级地传递到最深的元素上去。
来看一个例子:
<!DOCTYPE html>
<html>
<head>
<title>Event Bubbling Example</title>
</head>
<body>
<div id="myDiv">Click Me</div>
</body>
</html>
如果单击了如上的<div>元素:
对于事件冒泡来说:这个click事件传播顺序为:div ----> body ----> html ----> document
对于事件捕获来说:这个click事件传播顺序是:document ----> html ----> body ----> div
由于老版本的浏览器不支持事件捕获,因此很少有人使用事件捕获。
建议读者放心地使用事件冒泡, 在有特殊需要时再使用事件捕获。
参考:《Javascript高级程序设计》(Nicholas C.Zakas 著,李松峰 曹力 译)
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
下一篇:函数的自执行,变量提升和函数提升
- JS 控件事件小结 2020-03-25
- 分享JavaScript获取网页关闭与取消关闭的事件 2020-02-29
- jQuery事件绑定用法详解 2019-12-29
- input标签内容改变的触发事件介绍 2019-11-27
- 详解jQuery bind事件的操作方法 2019-11-03
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash