function AHrefClick (){
成都創(chuàng)新互聯(lián)是創(chuàng)新、創(chuàng)意、研發(fā)型一體的綜合型網站建設公司,自成立以來公司不斷探索創(chuàng)新,始終堅持為客戶提供滿意周到的服務,在本地打下了良好的口碑,在過去的十多年時間我們累計服務了上千家以及全國政企客戶,如成都混凝土攪拌罐車等企業(yè)單位,完善的項目管理流程,嚴格把控項目進度與質量監(jiān)控加上過硬的技術實力獲得客戶的一致贊美。
var e = jQuery.Event("keydown");//模擬一個鍵盤事件
e.keyCode = 13;//keyCode=13是回車
$("#id").trigger(e);//模擬按下回車
}
要模擬鍵盤事件,首先要在需要模擬的元素上綁定事件才能模擬。比如先:
$(".div").on("keydown","input",function(){
alert("ABC");
});
然后再執(zhí)行:
var e = jQuery.Event("keydown");//模擬一個鍵盤事件
e.keyCode = 13;//keyCode=13是回車
$(".div input").trigger(e);//模擬按下回車
有時候我們需要頁面自動點擊超鏈接或者按鈕,可以用js或者jQuery利用程序去點擊,方法很簡單,按鈕或超鏈接代碼如下:
點擊超鏈接 點擊按鈕
上面是一個超鏈接和一個按鈕,并且超鏈接和按鈕都綁定了點擊事件
先看超鏈接,如果我們打算點擊超鏈接的同時不僅觸發(fā)事件而且跳轉到href的指定鏈接,可以用:
script
document.getElementById("alink").click();/script
這樣就可以實現上面的功能,但是如果我只想觸發(fā)事件而不想跳轉呢,方法有兩個,第一個是href寫上href="javascript:;"
另外的方法是引入jQuery,然后用jQuery點擊事件觸發(fā)
script
$("#alink").click();/script
這樣就不會跳轉了
如果是按鈕的話,直接用以下代碼:1 script2 //真正的用程序點擊按鈕3 document.getElementById("btn").click();4 //沒有點擊按鈕,只是執(zhí)行了按鈕所綁定的事件5 document.getElementById("btn").onclick();6 /script
常用模擬
在jQuery中,可以使用trigger()方法完成模擬操作。
例如,使用如下代碼來觸發(fā)id為btn按鈕的click事件。
代碼示例:
$("#btn").trigger("click");
當頁面加載完畢后,就會立刻輸出想要的效果。
也可以直接用簡化寫法click():
代碼示例:
$("#btn").click();
trigger(type,[data])
在每一個匹配的元素上觸發(fā)某類事件。
這個函數也會導致瀏覽器同名的默認行為的執(zhí)行。比如,如果用trigger()觸發(fā)一個'submit',則同樣會導致瀏覽器提交表單。如果要阻止這種默認行為,應返回false。
你也可以觸發(fā)由bind()注冊的自定義事件
返回值 jQuery
參數
type (String) : 要觸發(fā)的事件類型
data (Array) : (可選)傳遞給事件處理函數的附加參數
示例
提交第一個表單,但不用submit()
jQuery 代碼:
$("form:first").trigger("submit")
--------------------------------------------------------------------------------
給一個事件傳遞參數
jQuery 代碼:
$("p").click( function (event, a, b) {
// 一個普通的點擊事件時,a和b是undefined類型
// 如果用下面的語句觸發(fā),那么a指向"foo",而b指向"bar"
} ).trigger("click", ["foo", "bar"]);
--------------------------------------------------------------------------------
下面的代碼可以顯示一個"Hello World"
jQuery 代碼:
$("p").bind("myEvent", function (event, message1, message2) {
alert(message1 + ' ' + message2);
});
$("p").trigger("myEvent", ["Hello","World!"]);
=====================================================================
triggerHandler(type,[data])
這個特別的方法將會觸發(fā)指定的事件類型上所有綁定的處理函數。但不會執(zhí)行瀏覽器默認動作.
返回值 jQuery
參數
type (String) : 要觸發(fā)的事件類型
data (Array) : (可選)傳遞給事件處理函數的附加參數
示例
如果你對一個focus事件執(zhí)行了 .triggerHandler() ,瀏覽器默認動作將不會被觸發(fā),只會觸發(fā)你綁定的動作。
HTML 代碼:
button id="old".trigger("focus")/button
button id="new".triggerHandler("focus")/buttonbr/br/
input type="text" value="To Be Focused"/
jQuery 代碼:
$("#old").click(function(){
$("input").trigger("focus");
});
$("#new").click(function(){
$("input").triggerHandler("focus");
});
$("input").focus(function(){ $("spanFocused!/span").appendTo("body").fadeOut(1000); });
通過改變select的size屬性,來模擬彈出事件。
代碼:
$('#pop').click(function(){
$('#select').attr('size',5);
})
$('#shift').click(function(){
$('#select').attr('size',1);
})
效果
select
自動彈出
這個有什么用呢?
你可以在那個指定的坐標上面創(chuàng)建一個1像素的透明元素 , 模擬點擊那個元素。