http://www.imooc.com/learn/138
理解事件流
使用事件处理程序
不同事件类型
1、事件流
事件冒泡和事件捕获
2、事件处理程序(事件模型)
第一部分:Traditional Model和W3C的标准DOM事件模型
第一种,html事件处理程序(IE和Firefox等其他浏览器)
缺点:html和js紧密耦合
第二种:传统模型,DOM0级事件处理元素(IE和Firefox等其他浏览器)
给标签(属性名)绑定事件
用的比较多,传统,简单
第三种:W3C (Firefox.e.g) Event Model,DOM2级事件处理元素(不支持ie8)
定义两个方法:addEventListener()和removeEventListener()
三个参数:事件名,处理函数,事件类型(可定义冒泡事件false或捕获事件true)
第二种和第三种优点:可添加多个事件
need-to-insert-img
第二部分:IE事件处理程序(默认事件冒泡)也支持opera
attachEvent()
detachEvent()
第三部分:跨浏览器事件处理程序
3、事件对象
第一部分:dom事件对象
type:事件类型
target:事件目标
方法:stopPropagation()阻止事件冒泡
preventDefault()阻止事件的默认行为
<a href='#'>超链接</a>
第一部分:IE事件对象
type:事件类型
srcElement:事件目标
属性cancelBubble阻止事件冒泡,true阻止,false不阻止
属性returnValue阻止事件默认行为,false阻止