使用jQuery中trigger()方法自動觸發事件


一、常用事件

在頁面加載完成時  自動觸發input的點擊事件,在移動端可以實現自動彈出輸入法,獲得焦點

$("input").trigger("click").focus();

還有一種簡寫方式:

$("input").click();

還有其它事件就不一一列出了。

 

二、自定義事件

$("#btn").on("myClick",function(){
   alert("自定義事件");
});

$("#btn").trigger("myClick");

 

三、傳遞參數

trigger(tpye[,datea])方法有兩個參數,第一個參數是要觸發的事件類型,第二個單數是要傳遞給事件處理函數的附加數據,以數組形式傳遞。通常可以通過傳遞一個參數給回調函數來區別這次事件是代碼觸發的還是用戶觸發的。

$("#btn").bind("myClick", function (event, message1, message2) { //獲取數據
    $("#test").append("p" + message1 + message2 + "</p>");
});
$("#btn").trigger("myClick",["我的自定義","事件"]); //傳遞兩個數據

$(“#btn”).trigger(“myClick”,["我的自定義","事件"]); //傳遞兩個數據

 

四、執行默認操作

triger()方法觸發事件后,會執行瀏覽器默認操作。例如:

$("input").trigger("focus");

以上代碼不僅會觸發為input元素綁定的focus事件,也會使input元素本身得到焦點(瀏覽器默認操作)。

如果只想觸發綁定的focus事件,而不想執行瀏覽器默認操作,可以使用jQuery中另一個類似的方法-triggerHandler()方法。

$("input").triggerHandler("focus");

該方法會觸發input元素上綁定的特定事件,同時取消瀏覽器對此事件的默認操作,即文本框指觸發綁定的focus事件,不會得到焦點。

 

教程參考地址:http://blog.csdn.net/lijunling2008live/article/details/7457396


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM