js事件详解

事件流
DOM事件流的三个阶段:1、事件捕获阶段 2、处于目标阶段 3、事件冒泡阶段
要理解事件流我们先来看一看事件的整个传播过程:
  事件捕获阶段:用户触发事件window-->document-->html-->body-->祖先节点-->.......-->父节点-->目标元素
  事件冒泡阶段:目标元素-->父节点-->......->祖先节点-->body-->html-->document-->window
所有的浏览器都实现了事件冒泡(网景除外)。
IE9+和所有的现代浏览器也都支持事件捕获并且是从window开始捕获的。
NOTE:由于低版本IE(IE8-)不能实现事件捕获,因此很少用。
事件处理程序
响应某个事件的处理函数就是事件处理程序。
1、html事件处理程序
1 <input type="button" value="单击事件" oncick="fnHandler()" />

NOTE:在html事件处理程序中使用双引号、大于、小于等符号时可以使用实体符代替。

1 <button onclick="fnShow(&quot;hello&quot;)">单击事件</button>
2 <script>
3     function fnShow(sMsg){
4         alert(sMsg);
5     }
6 </script>

缺点:

  1、时差问题。当事件处理程序代码放在元素的后面,在事件处理程序没有解析完成用户就出发了事件就会报错;

  2、html代码和javascript代码耦合比较高。

2、DOM0级

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。