jQuery trigger() 方法
實例
觸發 <input> 元素的 select 事件:
$("button").click(function(){
$("input").trigger("select");
});
定義和用法
trigger() 方法觸發被選元素上指定的事件以及事件的默認行為(比如表單提交)。
該方法與 triggerHandler() 方法類似,不同的是 triggerHandler() 不觸發事件的默認行為。
與 triggerHandler() 方法相比的不同之處:
- 它不會引起事件(比如表單提交)的默認行為
- .trigger() 會操作 jQuery 對象匹配的所有元素,而 .triggerHandler() 只影響第一個匹配元素。
- 由 .triggerHandler() 創建的事件不會在 DOM 樹中冒泡;如果目標元素不直接處理它們,則不會發生任何事情。
實例
triggerHandler() 與 .trigger() 比較:
$( "#old" ).click(function() {
$( "input" ).trigger( "focus" );
});
$( "#new" ).click(function() {
$( "input" ).triggerHandler( "focus" );
});
$( "input" ).focus(function() {
$( "<span>Focused!</span>" ).appendTo( "body" ).fadeOut( 1000 );
});
語法
$(selector).trigger(event,eventObj,param1,param2,...)
參數 | 描述 |
---|---|
event | 必需。規定指定元素上要觸發的事件。 可以是自定義事件,或者任何標準事件。 |
param1,param2,... | 可選。傳遞到事件處理程式的額外參數。 額外的參數對自定義事件特別有用。 |

更多實例
傳遞額外參數到自定義事件
如何傳遞額外參數到自定義事件處理程式。
trigger() 和 triggerHandler() 之間的不同
演示 trigger() 和 triggerHandler() 之間的不同。