2015-06-17 207 views
1

documentation for .on(),參數被給出如下:jQuery.on回調參數

.on(events [, selector ] [, data ], handler) 

至於所述handler參數(即,回調函數):

處理器

類型:Function(Event eventObject [, Anything extraParameter ] [, ... ])

觸發事件時執行的函數。值false也被允許作爲一個函數的簡寫,簡單地做return false

什麼時候將任何extraParameter參數傳遞給回調函數? .on()有很多別名,但我沒有遇到任何比eventObject參數更多的別名。

回答

3

還有就是文檔中的例子:

$("div").on("click", function(event, person) { 
    alert("Hello, " + person.name); 
}); 

//You can trigger an event without user action 
$("div").trigger("click", { name: "Jim" }); 
+2

值得一提的是'.trigger'被定義爲'.trigger(EVENTTYPE [,extraParameters])',這使得甚至更明顯的連接。 –

+0

這是額外參數存在的唯一情況嗎? –

+0

我唯一能找到的是:'trigger'和'triggerHandler',它們非常相似。 – Jorgeblom

1

當是傳遞給回調函數的任何extraParameter參數?

利用.trigger(eventType [,extraParameters])

var obj = $({}) 
 

 
obj.on("evt", function(e, a, b) { 
 
    console.log(e, a * b) 
 
}); 
 

 

 
obj.trigger("evt", [Math.random(), 100])
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>