博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js事件相关知识
阅读量:5294 次
发布时间:2019-06-14

本文共 876 字,大约阅读时间需要 2 分钟。

事件

事件就是用户或浏览器自身执行的某种动作,如click、load等,都是事件的名字。而响应某个事件的函数就是事件处理程序或事件侦听器,通常以“on+事件名字”命名,如onclick、onload。

事件最早是在IE3和Netscape Navigator2中出现的,当时是作为分担服务器运算负载的一种手段。在IE4和Navigator4发布时提供了相似但不相同的API。

事件流

从页面中接收事件的顺序。IE和Netscape开发团队提出了差不多是完全相反的事件流的概念。IE提出的是事件冒泡流,Netscape提出的是事件捕获流。

事件冒泡(event bubbling),即事件开始时由最具体的元素(文档中嵌套层次最深的那个节点或者目标节点)接收,然后逐级向上传播到较为不具体的节点(文档)。

事件捕获(event capturing),则与事件冒泡流思想相反,即事件开始由不太具体的节点接收,然后逐一向下传播到最具体的元素。它的用意在于事件到达预订目标之前捕获它。

区别:

概念:差不多相反的思想;

范围:所有的现代浏览器都支持事件冒泡,不同浏览器在具体实现上有所差别;事件捕获是Netscape Communicator唯一支持的事件流模型,但IE9、Safari、Chrome、Opera和Firefox目前也都支持这种事件流模型,但老版本的浏览器不支持。所以建议放心地使用事件冒泡,在有特殊需要时再使用事件捕获。

DOM事件流

“DOM2级事件”规定的事件流包括三个阶段:事件捕获阶段、处于目标阶段和事件冒泡阶段。首先发生的是时间捕获,为截获事件提供了机会,然后是实际目标接收到时间,最后是冒泡阶段,对事件作出响应。

“DOM2级事件”规范明确要求捕获阶段不会涉及事件目标,但IE9、Safari、Chrome、Firefox和Opera9.5以及更高版本都会在捕获阶段触发事件对象上的事件。结果就是有两个机会在目标对象上面操作事件。

 

转载于:https://www.cnblogs.com/huangyx/p/4761512.html

你可能感兴趣的文章
web前端之路,js的一些好书(摘自聂微东 )
查看>>
【模板】对拍程序
查看>>
微信小程序开发初体验
查看>>
dos批处理(bat)运行exe
查看>>
关键字
查看>>
Pycharm安装Markdown插件
查看>>
上传图片并预览
查看>>
哈夫曼编码_静态库
查看>>
【转】redo与undo
查看>>
C#更新程序设计
查看>>
常用Request对象获取请求信息
查看>>
解决升级系统导致的 curl: (48) An unknown option was passed in to libcurl
查看>>
Shell命令-内置命令及其它之watch、date
查看>>
Java Session 介绍;
查看>>
spoj TBATTLE 质因数分解+二分
查看>>
Django 模型层
查看>>
第8章-方法
查看>>
dedecms讲解-arc.listview.class.php分析,列表页展示
查看>>
Microsoft SQL Server Transact-SQL
查看>>
Font: a C++ class
查看>>