最新的Web開發教程
 

jQuery事件方法


jQuery是度身訂造,以在HTML頁面響應事件。


什麼是事件?

所有這些網頁可以響應不同訪問者的行動被稱為事件。

事件代表了精確時刻有事時。

例子:

  • 移動鼠標在一個元素
  • 選擇單選按鈕
  • 點擊一個元素

術語"fires/fired"往往與事件使用。 例如:“該keypress事件被觸發,此刻的你按一個鍵”。

下面是一些常見的DOM事件:

鼠標事件 鍵盤事件 活動形式 文檔/窗口事件
click keypress submit load
dblclick keydown change resize
mouseenter keyup focus scroll
mouseleave   blur unload

jQuery的語法對於事件的方法

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

在頁面上指定一個click事件的所有段落,你可以這樣做:

$("p").click();

下一步是定義事件觸發時會發生什麼。 你必須通過事件的函數:

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

常用的jQuery事件方法

$(document).ready()

$(document).ready()方法可以讓我們執行一個功能時,該文件是滿載。 此事件在已經解釋的jQuery語法章節。

click()

click()方法附加一個事件處理函數的HTML元素。

當用戶點擊的HTML元素上執行的功能。

下面的例子說:當點擊事件觸發<p>元素; 隱藏當前<p>元素:

$("p").click(function(){
    $(this).hide();
});
試一試»

dblclick()

dblclick()方法附加一個事件處理函數的HTML元素。

執行函數時,HTML元素的用戶雙擊:

$("p").dblclick(function(){
    $(this).hide();
});
試一試»

mouseenter()

mouseenter()方法附加一個事件處理函數的HTML元素。

當鼠標指針進入HTML元素執行函數:

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

mouseleave()

mouseleave()方法附加一個事件處理函數的HTML元素。

當鼠標指針離開HTML元素執行函數:

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

mousedown()

mousedown()方法附加一個事件處理函數的HTML元素。

該功能被執行,當左,中,右鼠標按鈕被按下,而鼠標移動到HTML元素:

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

mouseup()

mouseup()方法附加一個事件處理函數的HTML元素。

該功能被執行,當左,中,右鼠標按鈕被釋放,而鼠標移動到HTML元素:

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

hover()

hover()方法有兩個功能,是結合mouseenter()mouseleave()方法。

當鼠標進入HTML元素當鼠標離開HTML元素執行第一功能,並執行第二功能:

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

focus()

focus()方法附加一個事件處理函數的HTML表單字段。

當表單域獲得焦點執行的功能:

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

blur()

blur()方法附加一個事件處理函數的HTML表單字段。

當表單字段失去焦點時執行的功能:

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

on()方法

on()方法附加所選元素的一個或多個事件處理程序。

附加click事件到<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");
    }
});
試一試»

自測練習用!

練習1» 練習2» 練習3» 練習4» 練習5»


jQuery的事件方法

對於一個完整的jQuery的事件引用,請訪問我們的jQuery事件參考