easy

DocsVersion : 1.0.0

事件模块

Define in : event.js

该模块提供了对 easJS Object 中的 DOM 元素进行事件的绑定和卸载的方法,当然还有方便的事件代理的方法。在兼容性方面,对于 mouseenter 和 mouseleave,focusin 和 focusout 以及 mousewheel 进行了处理,使其可以在主流的浏览器中使用。

大部分浏览器在触发 resize 事件时会多次触发,easy.js 的事件模块对其进行了优化,确保每次都只会触发一次 resize 事件。

由于原生的 Event 对象不方便添加自定义属性,而 IE 和非 IE 浏览器在的该对象上存在较大的差异,easy.js 的事件模块依照标准模拟了一个 Event 对象,这样在使用上更方便,用户不用理会不同浏览器之间的兼容问题,可以放心的使用标准的属性和方法。具体的属性和方法说明可见下面的列表。

方法
fireprototype
onprototype
oneprototype
unprototype

下表列出了模拟的 Event 对象做了兼容处理的一些标准或自定义的属性和方法:

属性名 类型 说明
currentTarget Element

绑定事件的 DOM 元素,如果是事件代理,同样也是绑定了事件的 DOM 元素。

extraData Object

在绑定事件时添加的附件数据。

isDefaultPrevented Boolean

判定是否阻止了默认事件,如果阻止了则为 true,否则为 false。

isImmediatePropagationStopped Element

判定是否阻止了同类型事件的冒泡,如果阻止了则为 true,否则为 false。

isDefaultPrevented Boolean

判定是否阻止了默认事件,如果阻止了则为 true,否则为 false。

originalEvent Object

原生的 Event 对象。

pageX Number

鼠标事件触发时,鼠标指针相对于 document 左侧的偏移位置。

pageY Number

鼠标事件触发时,鼠标指针相对于 document 顶部的偏移位置。

preventDefault Function

阻止 DOM 元素的默认事件的触发。

relatedTarget Element

鼠标触发 mouseover 和 mouseout 时触发事件的 DOM 元素,对其他事件无效。

stopImmediatePropagation Function

阻止 DOM 元素的同类型事件的冒泡。

stopPropagation Function

阻止事件冒泡。

target Element

触发事件的 DOM 元素。

timeStamp Number

事件触发时的时间戳。

type String

事件类型。

which Number

对于键盘事件,该属性是 event.keyCode 和 event.charCode 的标准化属性,对于鼠标事件,1 表示左键,2 表示中键,3 表示右键。

type String

事件类型。