jQuery 事件方法


jQuery 是专门为响应 HTML 页面中的事件而定制的。


什么是事件?

网页可以响应的所有不同访问者的操作称为事件。

事件代表某事发生的精确时刻。

例子:

  • 将鼠标移到元素上
  • 选择一个单选按钮
  • 单击一个元素

期限"fires/fired"经常与事件一起使用。示例:"The keypress event is fired, the moment you press a key"。

以下是一些常见的 DOM 事件:

Mouse Events Keyboard Events Form Events Document/Window Events
click keypress submit load
dblclick keydown change resize
mouseenter keyup focus scroll
mouseleave   blur unload

事件方法的 jQuery 语法

在 jQuery 中,大多数 DOM 事件都有等效的 jQuery 方法。

要将点击事件分配给页面上的所有段落,您可以执行以下操作:

$("p").click();

下一步是定义事件触发时应该发生什么。您必须将函数传递给事件:

$("p").click(function(){
  // action goes here!!
});


常用的 jQuery 事件方法

$(文档).ready()

这个$(document).ready()方法允许我们在文档完全加载时执行一个函数。这个事件已经在jQuery 语法章节。

点击()

这个click()方法将事件处理函数附加到 HTML 元素。

当用户单击 HTML 元素时执行该函数。

以下示例表示:当单击事件在<p>元素;隐藏当前的<p>元素:

示例

$("p").click(function(){
  $(this).hide();
});
亲自试一试 »

双击单击()

这个dblclick()方法将事件处理函数附加到 HTML 元素。

当用户双击 HTML 元素时执行该函数:

示例

$("p").dblclick(function(){
  $(this).hide();
});
亲自试一试 »

鼠标输入()

这个mouseenter()方法将事件处理函数附加到 HTML 元素。

当鼠标指针进入 HTML 元素时执行该函数:

示例

$("#p1").mouseenter(function(){
  alert("You entered p1!");
});
亲自试一试 »

鼠标离开()

这个mouseleave()方法将事件处理函数附加到 HTML 元素。

当鼠标指针离开 HTML 元素时执行该函数:

示例

$("#p1").mouseleave(function(){
  alert("Bye! You now leave p1!");
});
亲自试一试 »

鼠标按下()

这个mousedown()方法将事件处理函数附加到 HTML 元素。

当鼠标悬停在 HTML 元素上并按下鼠标左键、中键或右键时,将执行该函数:

示例

$("#p1").mousedown(function(){
  alert("Mouse down over p1!");
});
亲自试一试 »

鼠标松开()

这个mouseup()方法将事件处理函数附加到 HTML 元素。

当鼠标悬停在 HTML 元素上并释放鼠标左键、中键或右键时,将执行该函数:

示例

$("#p1").mouseup(function(){
  alert("Mouse up over p1!");
});
亲自试一试 »

徘徊()

这个hover()方法采用两个函数,并且是以下函数的组合mouseenter()mouseleave()方法。

第一个函数在鼠标进入 HTML 元素时执行,第二个函数在鼠标离开 HTML 元素时执行:

示例

$("#p1").hover(function(){
  alert("You entered p1!");
},
function(){
  alert("Bye! You now leave p1!");
});
亲自试一试 »

重点()

这个focus()方法将事件处理函数附加到 HTML 表单字段。

当表单字段获得焦点时执行该函数:

示例

$("input").focus(function(){
  $(this).css("background-color", "#cccccc");
});
亲自试一试 »

模糊()

这个blur()方法将事件处理函数附加到 HTML 表单字段。

当表单字段失去焦点时执行该函数:

示例

$("input").blur(function(){
  $(this).css("background-color", "#ffffff");
});
亲自试一试 »

on() 方法

这个on()方法为所选元素附加一个或多个事件处理程序。

将点击事件附加到<p>元素:

示例

$("p").on("click", function(){
  $(this).hide();
});
亲自试一试 »

将多个事件处理程序附加到<p>元素:

示例

$("p").on({
  mouseenter: function(){
    $(this).css("background-color", "lightgray");
  },
  mouseleave: function(){
    $(this).css("background-color", "lightblue");
  },
  click: function(){
    $(this).css("background-color", "yellow");
  }
});
亲自试一试 »

jQuery 练习

通过练习测试一下

练习:

使用正确的事件隐藏所有带有 "click" 的 <p> 元素。

$("p").(function(){
  $(this).hide();
});

开始练习


jQuery 事件方法

有关完整的 jQuery 事件参考,请访问我们的jQuery 事件参考