jQuery on() 方法

jQuery 事件方法 jQuery 事件方法

實例

向 <p> 元素添加 click 事件處理程式:

$(document).ready(function(){ $("p").on("click",function(){ alert("段落被點擊了。"); }); });


定義和用法

on() 方法在被選元素及子元素上添加一個或多個事件處理程式。

自 jQuery 版本 1.7 起,on() 方法是 bind()、live() 和 delegate() 方法的新的替代品。該方法給 API 帶來很多便利,我們推薦使用該方法,它簡化了 jQuery 代碼庫。

注意:使用 on() 方法添加的事件處理程式適用於當前及未來的元素(比如由腳本創建的新元素)。

提示:如需移除事件處理程式,請使用 off() 方法。

提示:如需添加只運行一次的事件然後移除,請使用 one() 方法。


語法

$(selector).on(event,childSelector,data,function)

參數 描述
event 必需。規定要從被選元素移除的一個或多個事件或命名空間。

由空格分隔多個事件值,也可以是數組。必須是有效的事件。
childSelector 可選。規定只能添加到指定的子元素上的事件處理程式(且不是選擇器本身,比如已廢棄的 delegate() 方法)。
data 可選。規定傳遞到函數的額外數據。
function 可選。規定當事件發生時運行的函數。


實例

更多實例

bind() 改為 on()
如何使用 on() 來達到與 bind() 相同的效果。

delegate() 改為 on()
如何使用 on() 來達到與 delegate() 相同的效果。

live() 改為 on()
如何使用 on() 來達到與 live() 相同的效果。

添加多個事件處理程式
如何向元素添加多個事件處理程式。

使用 map 參數添加多個事件處理程式
如何使用 map 參數向被選元素添加多個事件處理程式。

在元素上添加自定義事件
如何在元素上添加自定義命名空間事件。

向函數傳遞數據
如何向函數傳遞數據。

向未來的元素添加事件處理程式
演示 on() 方法也適用於尚未創建的元素。

移除事件處理程式
如何使用 off() 方法移除事件處理程式。


jQuery 事件方法 jQuery 事件方法