js-dom2高级事件列表

0级事件的事件注册:element.onmouseover=func,但是注意的是0级时间不允许给一个元素注册多个函数。
先说一下dom2级事件不支持ie,在ie中得事件被称之为ie事件模型。
在dom2中注册时间为addEventListener(事件名,回调函数,是否冒泡)移除为removeEventListener()
在ie为attachEvent()与detachEvent()
同时注意的是在ie中没有参数event,而是把改属性放到了window.event中所以在 编写代码的时候应该
function fun(event){
var e=event||window.event
//可以调用e了
}

在dom2中事件的冒泡是默认false的,但是在ie中是开启的。如果想要阻止的话,在dom2中具有event.stopPropagation()而在ie中为window.event.cancelBubble=true

2级DOM的Event模块包括HTMLEvents模块,MouseEvents模块,UIEvents模块。
HTMLEvents模块提供对Event类型事件的支持:abort,blur,change,erro,focus,load,reset,resize,scroll,select,submit,unload
MouseEvents模块提供对MouseEvent类型事件的支持:click,mousedown,mousemove,mouseout,mouseover,mouseup
UIEvents模块提供对UIEvent类型事件的支持:DOMActivate,DOMFocusIn,DOMFocusOut

 

Event接口定义了如下属性

  • type:   发生的事件类型,如click,mouseover
  • target: 发生事件的节点,可能与currentTarget不同
  • currentTarget: 当前正在运行时间句柄的节点
  • eventPhase: 一个数字,指定当前所处的事件传播过程的阶段。它的值为常量:Event.CAPTURING_PHASE、Event.AT_TARGET、Event.BUBBLING_PHASE
  • timeStamp: 一个Date对象,声明了事件何时发生。
  • bubbles: 一个布尔值,声明该事件是否在文档树中起泡
  • cancelable: 一个布尔值,声明该事件是否有默认动作。

Event接口定义的方法:

  • stopPropagation(): 阻止事件传播
  • preventDefault(): 阻止执行默认动作

 

UIEvent接口:

    Event接口的子接口,MouseEvent接口的父接口。

    定义了两个属性:

  • view: 发生事件的Window对象(视图对象)
  • detail: 一个数字。提供事件的额外信息。对于click,mousedown,mouseup事件,这个字段代表点击的次数。1代表一次,2代表两次,3代表3 次。(每次点击生成一次事件----detail值为2的鼠标事件之前总有detail值为1的鼠标事件)。对于DOMActivate事件,1表示为正 常激活,2表示超级激活。(如双击鼠标或同时按下Shift键和Enter键)

 

MouseEvent接口的属性:

  • button: 一个数字,0--左键,1--中间键,2--右键。
  • altKey,ctrlKey,shiftKey,metaKey:
  • clientX,clientY: 声明鼠标在浏览器窗口的坐标
  • screenX,screenY: 声明鼠标针对屏幕左上角的坐标
  • relatedTarget: 引用与事件的目标节点相关的节点。(mouseover--鼠标离开的节点,mouseout--鼠标将进入的节点)

 


 

事件类型名称:abort
事件接口:Event
是否冒泡:yes
默认动作:no
支持标签:<img>,<object>
详细属性:
事件类型名称:blur
事件接口:Event
是否冒泡:no
默认动作:no
支持标签:<a>,<area>,<button>,<input>,<label>,<select>,<textarea>
详细属性:
事件类型名称:change
事件接口:Event
是否冒泡:yes
默认动作:no
支持标签:<input>,<select>,<textarea>
详细属性:
事件类型名称:click
事件接口:MouseEvent
是否冒泡:yes
默认动作:yes
支持标签:
详细属性:screenX,screenY,clientX,clientY,altKey,ctrlKey,shiftKey,metaKey,button,detail
事件类型名称:error
事件接口:Event
是否冒泡:yes
默认动作:no
支持标签:<body>,<frameset>,<img>,<object>
详细属性:
事件类型名称:focus
事件接口:Event
是否冒泡:no
默认动作:no
支持标签:<a>,<area>,<button>,<input>,<label>,<select>,<textarea>
详细属性:
事件类型名称:load
事件接口:Event
是否冒泡:no
默认动作:no
支持标签:<body>,<frameset>,<iframe>,<img>,<object>
详细属性:
事件类型名称:mousedown
事件接口:MouseEvent
是否冒泡:yes
默认动作:yes
支持标签:
详细属性:screenX,screenY,clientX,clientY,altKey,ctrlKey,shiftKey,metaKey,button,detail
事件类型名称:mousemove
事件接口:MouseEvent
是否冒泡:yes
默认动作:no
支持标签:
详细属性:screenX,screenY,clientX,clientY,altKey,ctrlKey,shiftKey,metaKey
事件类型名称:mouseout
事件接口:MouseEvent
是否冒泡:yes
默认动作:yes
支持标签:
详细属性:screenX,screenY,clientX,clientY,altKey,ctrlKey,shiftKey,metaKey,relatedTarget
事件类型名称:mouseover
事件接口:MouseEvent
是否冒泡:yes
默认动作:yes
支持标签:
详细属性:screenX,screenY,clientX,clientY,altKey,ctrlKey,shiftKey,metaKey,relatedTarget
事件类型名称:mouseup
事件接口:MouseEvent
是否冒泡:yes
默认动作:yes
支持标签:
详细属性:screenX,screenY,clientX,clientY,altKey,ctrlKey,shiftKey,metaKey,button,detail
事件类型名称:reset
事件接口:Event
是否冒泡:yes
默认动作:no
支持标签:<form>
详细属性:
事件类型名称:resize
事件接口:Event
是否冒泡:yes
默认动作:no
支持标签:<body>,<frameset>,<iframe>
详细属性:
事件类型名称:scroll
事件接口:Event
是否冒泡:yes
默认动作:no
支持标签:<body>
详细属性:
事件类型名称:select
事件接口:Event
是否冒泡:yes
默认动作:no
支持标签:<input>,<textarea>
详细属性:
事件类型名称:submit
事件接口:Event
是否冒泡:yes
默认动作:yes
支持标签:<form>
详细属性:
事件类型名称:unload
事件接口:Event
是否冒泡:no
默认动作:no
支持标签:<body>,<frameset>
详细属性:
事件类型名称:DOMActivate
事件接口:UIEvent
是否冒泡:yes
默认动作:yes
支持标签:
详细属性:detail
事件类型名称:DOMFocusIn
事件接口:Event
是否冒泡:yes
默认动作:no
支持标签:none
详细属性:none
事件类型名称:DOMFocusOut
事件接口:Event
是否冒泡:yes
默认动作:no
支持标签:none
详细属性:none

posted on 2011-09-17 17:46    阅读(2857)  评论(0编辑  收藏  举报

导航