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

1、經常使用事件數組

在頁面加載完成時  自動觸發input的點擊事件,在移動端能夠實現自動彈出輸入法,得到焦點瀏覽器

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

還有一種簡寫方式:app

$("input").click();

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

 

2、自定義事件spa

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

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

 

3、傳遞參數.net

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

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

$(「#btn」).trigger(「myClick」,["個人自定義","事件"]); //傳遞兩個數據blog

 

4、執行默認操做教程

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

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

以上代碼不只會觸發爲input元素綁定的focus事件,也會使input元素自己獲得焦點(瀏覽器默認操做)。

若是隻想觸發綁定的focus事件,而不想執行瀏覽器默認操做,可使用jQuery中另外一個相似的方法-triggerHandler()方法。

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

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

 

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

相關文章
相關標籤/搜索