定義和用法
在on()方法附加所選元素和子元素的一個或多個事件處理程序。
作為jQuery的1.7版本中, on()方法是對新更換bind(), live()和delegate()方法。 這種方法帶來了很多一致性的API,我們建議您使用此方法,因為它簡化了jQuery代碼庫。
注意:使用事件處理程序連接on()方法將用於當前和未來的元素(如由腳本創建一個新的元素)工作。
提示:要刪除的事件處理程序,使用off()方法。
提示:要附加只運行一次,然後刪除自身的事件,使用one()方法。
句法
$(selector).on(event,childSelector,data,function,map)
參數 | 描述 |
---|---|
event | 需要。 指定一個或多個event(s)附著到選定的元素或命名空間。 多個事件值之間用空格分隔。 必須是一個有效的事件 |
childSelector | 可選的。 指定該事件處理程序只應附加到指定的子元件(而不是選擇器本身,如棄用delegate()方法)。 |
data | 可選的。 指定其他數據一起函數傳遞 |
function | 需要。 指定功能,當事件發生時運行 |
map | 指定事件映射( {event:function, event:function, ...})包含一個或多個事件附加到選擇的元素,其作用是當事件發生時運行 |
試一試 - 示例
更改bind()到on()
如何使用on()來實現同樣的效果bind()
更改delegate()來on()
如何使用on()來實現同樣的效果delegate()
從改變live()來on()
如何使用on()來實現同樣的效果live()
連接多個事件
如何將多個事件附加給一個元素。
安裝使用地圖參數多個事件處理程序
如何將多個事件處理程序附加到使用地圖參數選擇的元素。
在元素上附加一個自定義事件
如何在元素上附加一個自定義命名空間的事件。
數據轉嫁給功能
如何將數據傳遞沿給函數。
添加事件處理程序為未來元素
表明on()方法也適用於尚未創建的元素。
刪除事件處理程序
如何清除使用的事件處理程序off()方法。