包含了Event类, Element类上附加的用来处理事件的方法, 自定义事件, 以及添加了Function的原型方法bindWithEvent。
MIT-style license.
| Element. Event.js | 包含了Event类, Element类上附加的用来处理事件的方法, 自定义事件, 以及添加了Function的原型方法bindWithEvent。 |
| Event | 兼容各浏览器的事件管理 |
| 属性 | |
| stop | 停止事件 |
| stopPropagation | 停止事件的传播 |
| preventDefault | 防止事件的默认动作 |
| keys | |
| Element |
|
| 属性 | |
| addEvent | 为DOM元素增加一个事件监听器 |
| removeEvent | 移除先前为DOM元素添加的事件监听器 |
| addEvents | 可以一次为一个DOM元素添加多个事件监听器 |
| removeEvents |
移除DOM元素上某个类型的事件的所有监听器 |
| fireEvent | 执行一个DOM元素上某个类型的事件的所有监听器 |
| cloneEvents | 从一个DOM元素上复制所有监听器到本元素 |
| 自定义事件 | |
| 事件 | |
| mouseenter | 鼠标进入DOM元素的区域后触发。不会在经过子元素的时候触发(不像mouseover)。 |
| mouseleave | 鼠标离开DOM元素的区域后触发。不会在经过子元素的时候触发(不像mouseout)。 |
| Function |
|
| 属性 | |
| bindWithEvent | 自动会向目标function中传入一个mootools的Event类实例 |
兼容各浏览器的事件管理
| event | 浏览器的event对象 |
| shift | 如果按了键盘的shift键,则返回true |
| control |
如果按了键盘的ctrl键,则返回true |
| alt | 如果按了键盘的alt键,则返回true |
| meta | 如果按了键盘的meta键,则返回true |
| wheel | 鼠标滚轮的滚动量 |
| code |
按下的键盘的键代码 |
| page.x | 相对于整个浏览器的鼠标x位置 |
| page.y | 相对于整个浏览器的鼠标y位置 |
| client.x | 相对于可视区域的鼠标x位置 |
| client.y | 相对于可视区域的鼠标y位置 |
| key | 按下的键盘的键的名称。如 ‘enter’, ‘up’,
‘down’, ‘left’, ‘right’, ‘space’, ‘backspace’, ‘delete’, ‘esc’. |
| target | 事件的target |
| relatedTarget | 事件的参照target(即前一个事件的target) |
$('myLink').onkeydown = function(event){ var event = new Event(event);
alert(event.key); alert(event.shift);
if (event.key == 's' && event.control) {
alert('documentsaved');
} };
| 属性 | |
| stop | 停止事件 |
| stopPropagation | 停止事件的传播 |
| preventDefault | 防止事件的默认动作 |
| keys |
停止事件
停止事件的传播
防止事件的默认动作
Event.keys.whatever = 80; $(myelement).addEvent(keydown, function(event){ event = new Event(event); if (event.key == 'whatever') console.log(whatever key clicked). });
| 属性 | |
| addEvent | 为DOM元素增加一个事件监听器 |
| removeEvent | 移除先前为DOM元素添加的事件监听器 |
| addEvents | 可以一次为一个DOM元素添加多个事件监听器 |
| removeEvents | 移除DOM元素上某个类型的事件的所有监听器 |
| fireEvent | 执行一个DOM元素上某个类型的事件的所有监听器 |
| cloneEvents | 从一个DOM元素上复制所有监听器到本元素 |
为DOM元素增加一个事件监听器
| type | 要监听的事件 (‘click’, ‘load’, 等) |
| fn | 要执行的监听函数 |
$('myElement').addEvent('click', function(){alert('clicked!')});
移除先前为DOM元素添加的事件监听器
可以一次为一个DOM元素添加多个事件监听器
移除DOM元素上某个类型的事件的所有监听器
| type | 事件名(如 ‘click’) |
执行一个DOM元素上某个类型的事件的所有监听器
| type | 事件名 (如 ‘click’) |
| args | 数组或对象。要传给函数的参数。多个参数用数组。 |
| delay | 延迟执行函数的毫秒数 |
从一个DOM元素上复制所有监听器到本元素
| from | 要进行复制的源元素 |
| type | 可选,如'click'等。如果指定了,则表示只复制该种类型的事件上的监听器 |
| 事件 | |
| mouseenter | 鼠标进入DOM元素的区域后触发。不会在经过子元素的时候触发(不像mouseover)。 |
| mouseleave | 鼠标离开DOM元素的区域后触发。不会在经过子元素的时候触发(不像mouseout)。 |
鼠标进入DOM元素的区域后触发。不会在经过子元素的时候触发(不像mouseover)。
$(myElement).addEvent('mouseenter', myFunction);
鼠标离开DOM元素的区域后触发。不会在经过子元素的时候触发(不像mouseout)。
$(myElement).addEvent('mouseleave', myFunction);
| 属性 | |
| bindWithEvent | automatically passes MooTools Event Class. |
自动会向目标function中传入一个mootools的Event类实例
| bind | 可选,该对象中this所要引用的对象 |
| args | 可选,要传递入的参数;如果参数数量大于一个,需要使用数组 |
function myFunction(event){ alert(event.client.x); };
myElement.addEvent('click', myFunction.bindWithEvent(myElement));
Documentation by Aaron Newton & Mootools Developers, generated by NaturalDocs and tidy, and GeSHi
文档中文翻译:zarknight 勘误Email:zarknight@gmail.com