在事件处理函数中的函数 Inside the Event Handling Function
Prev Chapter 5. 事件 Next

在事件处理函数中的函数 Inside the Event Handling Function

就如在概述中提到的一样,事件处理函数可以接收包含很多属性和方法的事件对象。 事件对象常使用preventDefault方法阻止事件默认动作的执行。 当然,事件对象还包含了其它的有用的属性和方法,包括:

pageX, pageY

事件触发时鼠标相对于页面左上角的位置。

type

事件的类型(例如“click”)。

which

按下的按钮或按键。

data

事件被绑定时传入的所有数据。

target

初始化事件的DOM元素。

preventDefault()

阻止事件默认方法的执行(例如点击一个链接)。

stopPropagation()

停止事件影响其它元素。

除了事件对象之外,事件处理函数也可以通过this关键字访问事件处理函数所绑定的DOM元素。 我们可以使用$(this)将DOM元素转换成可以使用jQuery方法的jQuery对象,语法如下:

var $this = $(this);

Example 5.8. 阻止链接被访问

$('a').click(function(e) {
    var $this = $(this);
    if ($this.attr('href').match('evil')) {
        e.preventDefault();
        $this.addClass('evil');
    }
});


Copyright Rebecca Murphey, released under the Creative Commons Attribution-Share Alike 3.0 United States license.


Prev Up Next
为元素绑定事件Connecting Events to Elements Home 触发事件处理函数