返回值:jQuery triggerHandler(type, [data] )
概述
這個特別的方法將會觸發指定的事件型別上所有繫結的處理函式。但不會執行瀏覽器預設動作,也不會產生事件冒泡。
這個方法的行為表現與trigger類似,但有以下三個主要區別:
* 第一,他不會觸發瀏覽器預設事件。
* 第二,只觸發jQuery對像集合中第一個元素的事件處理函式。
* 第三,這個方法的返回的是事件處理函式的返回值,而不是據有可鏈性的jQuery對象。此外,如果最開始的jQuery對像集合為空,則這個方法返回 undefined 。
參數
type,[data] String,Array V1.2
type: 要觸發的事件型別
data: 傳遞給事件處理函式的附加參數
示例
描述:
如果你對一個focus事件執行了 .triggerHandler() ,瀏覽器預設動作將不會被觸發,只會觸發你繫結的動作。
HTML 程式碼:
<button id="old">.trigger("focus")</button>
<button id="new">.triggerHandler("focus")</button><br/><br/>
<input type="text" value="To Be Focused"/>
jQuery 程式碼:
$("#old").click(function(){
$("input").trigger("focus");
});
$("#new").click(function(){
$("input").triggerHandler("focus");
});
$("input").focus(function(){
$("<span>Focused!</span>").appendTo("body").fadeOut(1000);
});