首頁  >  事件  > on(eve,[sel],[data],fn)

返回值:jQuery on(events,[selector],[data],fn)

概述

在選擇元素上繫結一個或多個事件的事件處理函式。

on()方法繫結事件處理程式到目前選定的jQuery對像中的元素。在jQuery 1.7中,.on()方法 提供繫結事件處理程式所需的所有功能。幫助從舊的jQuery事件方法轉換,see  .bind() .delegate() , 和  .live() . 要刪除的.on()繫結的事件,請參閱 .off() 。要附加一個事件,只執行一次,然後刪除自己, 請參閱 .one()

參數

events,[selector],[data],fn V1.7

events :一個或多個用空格分隔的事件型別和可選的名稱空間,如"click"或"keydown.myPlugin" 。

selector :一個選擇器字串用於過濾器的觸發事件的選擇器元素的後代。如果選擇的< null或省略,當它到達選定的元素,事件總是觸發。

data :當一個事件被觸發時要傳遞event.data給事件處理函式。

fn :該事件被觸發時執行的函式。 false 值也可以做一個函式的簡寫,返回false。

events-map,[selector],[data] V1.7

events-map :個用字串表示的,一個或多個空格分隔的事件型別和可選的名稱空間,值表示事件繫結的處理函式。

selector :一個選擇器字串過濾選定的元素,該選擇器的後裔元素將呼叫處理程式。如果選擇是空或被忽略,當它到達選定的元素,事件總是觸發。

data :當一個事件被觸發時要傳遞event.data給事件處理函式。

示例

描述:

Display a paragraph's text in an alert when it is clicked:


$("p").on("click", function(){
alert( $(this).text() );
});

Pass data to the event handler, which is specified here by name:


function myHandler(event) {
alert(event.data.foo);
}
$("p").on("click", {foo: "bar"}, myHandler)

Cancel a form submit action and prevent the event from bubbling up by returning false:


$("form").on("submit", false)

Cancel only the default action by using .preventDefault().


$("form").on("submit", function(event) {
  event.preventDefault();
});

Stop submit events from bubbling without preventing form submit, using .stopPropagation().


$("form").on("submit", function(event) {
  event.stopPropagation();
});