jQuery的triggerHandler()方法
翻譯結果:
trigger
英[ˈtrɪgə(r)] 美[ˈtrɪɡɚ]
#n.(槍)扳機;起動裝置,扳柄;引發其他事件的扳柄;引發其他事件的一件事;[電子學]觸發器,觸發電器
vt.引發,觸發;扣…的扳機;發射或使爆炸(武器或爆炸性彈藥)
Handler
處理程序
jQuery的triggerHandler()方法語法
作用:triggerHandler() 方法觸發被選元素的指定事件類型。但不會執行瀏覽器預設動作,也不會產生事件冒泡。 triggerHandler() 方法與 trigger() 方法類似。不同的是它不會觸發事件(例如表單提交)的預設行為,而且只影響第一個匹配元素。
說明:與tigger()的區別它不會引起事件(例如表單提交)的預設行為.trigger() 會操作jQuery 物件匹配的所有元素,而.triggerHandler( ) 只影響第一個匹配元素。由 .triggerHandler() 建立的事件不會在 DOM 樹中冒泡;如果目標元素不直接處理它們,則不會發生任何事情。此方法的傳回的是事件處理函數的回傳值,而不是具有可鏈性的 jQuery 物件。此外,如果沒有處理程序被觸發,則這個方法會傳回 undefined。
觸發事件:規定被選元素要觸發的事件。
語法:$(selector).triggerHandler(event,[param1,param2,...]
參數:
參數 | 描述 |
#event | 必須。規定指定元素要觸發的事件。 |
[param1,param2,...] | #可選。傳遞到事件處理程序的額外參數。 |
jQuery的triggerHandler()方法範例
<html> <head> <script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/2.1.1/jquery.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("input").select(function(){ $("input").after("发生 Input select 事件!"); }); $("button").click(function(){ $("input").triggerHandler("select"); }); }); </script> </head> <body> <input type="text" name="FirstName" value="Hello World" /> <br /> <button>激活 input 域的 select 事件</button> <p>请注意,与 trigger() 方法不同,triggerHandler() 方法不会引起所发生事件的默认行为(文本不会被选中)。</p> </body> </html>
#點擊 "執行實例" 按鈕查看線上實例