English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Metodi di evento jQuery

事件是Web应用程序可以检测到的操作。

jQuery提供了将事件处理程序附加到选择的简单方法。

发生事件时,将执行提供的函数。

以下是示例事件:

  • 网页加载

  • 点击一个元素

  • 将鼠标移到元素上

  • 提交HTML表格

  • 键盘上的按键等

事件方法的jQuery语法

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

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

$("p").click();

下一步是定义事件发生时应发生的情况。您必须将一个函数传递给事件:

$("p").click(function(){
  // 需要执行的动作...
  });

此示例在单击页面时隐藏页面上的段落:

$("p").click(function(){
  $(this).hide();
});
testa per vedere‹/›

本示例将一个“changeSize”函数附加到click事件:

$(document).ready(function(){
  $("p").click(changeSize);
});
function changeSize() {
  $(this).animate({fontSize: "+=5px"});
}
testa per vedere‹/›

常用的jQuery事件方法

$(document).ready()

jQuery $(document).ready()方法指定在DOM完全加载时要执行的函数。

以下示例在加载DOM时显示一条消息:

$(document).ready(function(){
  $("p").text("现在已经加载了DOM,可以对其进行操作.");
});
testa per vedere‹/›

click()}}

jQuery click()}}Il metodo aggiunge una funzione gestore di eventi all'elemento selezionato.

Quando l'utente fa clic sull'elemento, viene eseguita questa funzione:

$("p").click(function(){
  $(this).css({"background-color":"#007FFF", "color":"white"});
});
testa per vedere‹/›

mouseenter()

jQuery mouseenter()Il metodo aggiunge una funzione gestore di eventi all'elemento selezionato.

Quando il puntatore del mouse entra nell'elemento, viene eseguita questa funzione:

$("p").mouseenter(function(){
  $(this).css("background-color", "yellow");
});
testa per vedere‹/›

mouseleave()

jQuery mouseleave()Il metodo aggiunge una funzione gestore di eventi all'elemento selezionato.

Quando il puntatore del mouse lascia l'elemento, viene eseguita questa funzione:

$("p").mouseleave(function(){
  $(this).css("background-color", "lightblue");
});
testa per vedere‹/›

mousedown()

jQuery mousedown()Il metodo aggiunge una funzione gestore di eventi all'elemento selezionato.

Quando l'utente preme un pulsante del mouse sull'elemento, viene eseguita questa funzione:

$("p").mousedown(function(){
  $(this).after("<p style='color:red;'>Premere il pulsante del mouse</p>");
});
testa per vedere‹/›

mouseup()

jQuery mouseup()Il metodo aggiunge una funzione gestore di eventi all'elemento selezionato.

Quando il pulsante del mouse viene rilasciato sull'elemento, viene eseguita questa funzione:

$("p").mouseup(function(){
  $(this).after("<p style='color:green;'>Rilasciare il pulsante del mouse</p>");
});
testa per vedere‹/›

keydown()

jQuery keydown()Il metodo aggiunge una funzione gestore di eventi all'elemento selezionato.

Quando l'utente preme una chiave sulla tastiera, viene eseguita questa funzione:

$("input").keydown(function(event){
  $(this).css("background-color", "yellow");
  $("span").text(event.type);
});
testa per vedere‹/›

keyup()

jQuery keyup()Il metodo aggiunge una funzione gestore di eventi all'elemento selezionato.

Quando l'utente rilascia una chiave sulla tastiera, viene eseguita questa funzione:

$("input").keyup(function(event){
  $(this).css("background-color", "lightblue");
  $("span").text(event.type);
});
testa per vedere‹/›

hover()

jQuery hover()Metodi hanno due funzioni e sonomouseenter()emouseleave()La combinazione dei metodi.

Esempio di cambio del colore di sfondo degli elementi quando il puntatore del mouse è sopra di essi.<p>Il colore di sfondo dell'elemento:

$("p").hover(function(){
  $(this).css("background-color", "yellow");
  }, function(){
  $(this).css("background-color", "lightblue");
});
testa per vedere‹/›

Il metodo on()

jQuery forniscemetodoUn metodo per rispondere a qualsiasi evento sull'elemento selezionato.

UtilizzandometodoMetodi, possiamo aggiungere un o più gestori di eventi all'elemento selezionato.

Esempio di aggiunta dell'evento click a tutti i<p>elemento:

$("p").on("click", function(){
  $("this").css("background-color", "coral");
});
testa per vedere‹/›

Il seguente esempio aggiunge l'evento mouseenter a tutti<p>elemento:

$("p").on("mouseenter", function(){
  $("this").css("background-color", "coral");
});
testa per vedere‹/›

Il seguente esempio aggiunge più gestori di eventi a<div>elemento:

$("div").on("mouseenter mouseleave click", function(){
  $("this").text(Math.random());
});
testa per vedere‹/›

metodo off()

jQuery metodo  metodo eliminametodoun metodo con uno o più gestori di eventi associati.

Il seguente esempio viene da<div>rimuovi l'evento mousemove dall'elemento:

$("button").click(function(){
  $("div").off("mousemove");
});
testa per vedere‹/›

oggetto evento

Il sistema di eventi jQuery standardizza gli oggetti evento secondo lo standard W3C.

Assicurati di passare l'oggetto evento al gestore degli eventi.

Ogni funzione di gestione degli eventi riceve un oggetto evento che contiene molte proprietà e metodi.

$("div").on("click", function(event){
  alert("Il tipo di evento è: " + event.type);
  alert("Obiettivo: " + event.target.innerHTML);
});
testa per vedere‹/›

La seguente tabella elenca tutti i metodi e le proprietà degli oggetti evento:

metodo/proprietàdescrizione
event.currentTargetl'elemento DOM corrente nella fase di propagazione dell'evento
event.datacontiene i dati opzionali passati al metodo dell'evento durante l'esecuzione del gestore di eventi
event.delegateTargetritorna l'elemento che ha aggiunto il gestore di eventi jQuery corrente
event.isDefaultPrevented()ritorna seevent.preventDefault()chiamato per l'oggetto evento
event.isImmediatePropagationStopped()ritorna seevent.stopImmediatePropagation()chiamato per l'oggetto evento
event.isPropagationStopped()ritorna seevent.stopPropagation()chiamato per l'oggetto evento
event.metakeyindica se è stato premuto il tasto META durante la触发azione dell'evento
event.namespaceritorna lo spazio di nomi specificato per l'evento
event.pageXritorna la posizione del mouse rispetto al margine sinistro del documento
event.pageYRestituisce la posizione del mouse rispetto all'angolo superiore destro del documento
event.preventDefault()Previene che il browser esegua l'operazione predefinita dell'elemento selezionato
event.relatedTargetRestituisce l'elemento da inserire o uscire quando si muove il mouse
event.resultContiene l'ultimo/ultimo valore restituito dal programma di gestione eventi scatenato dall'evento specificato
event.stopImmediatePropagation()Previene che altri programmi di gestione eventi vengano chiamati
event.stopPropagation()Previene che l'evento schizzi l'albero DOM, prevenendo che qualsiasi programma genitore riceva la notifica dell'evento
event.targetRestituisce quale elemento DOM ha scatenato l'evento
event.timeStampRestituisce il tempo di creazione dell'evento (in millisecondi rispetto all'epoch)
event.typeRestituisce il tipo di evento scatenato
event.whichRestituisce la tastiera premuta o il pulsante del mouse per l'evento di ritorno

Manuale di riferimento degli eventi jQuery

Per una参考 completa degli eventi, visitare il nostroManuale di riferimento degli eventi jQuery.