jQuery triggerHandler()

admin發表於2017-02-24

此方法觸發匹配元素集合中第一個元素指定型別事件。

語法結構:

[JavaScript] 純文字檢視 複製程式碼
.triggerHandler(eventType [, extraParameters ])

引數解析:

(1).eventType:JavaScript事件型別的字串,比如"click"或"submit"。

(2).extraParameters:可選,傳遞給事件處理程式的額外引數,傳遞多個引數需要通過陣列形式。

jQuery1.2版本新增。

語法結構二:

[JavaScript] 純文字檢視 複製程式碼
.triggerHandler(event [, extraParameters ])

引數解析:

(1).event:jQuery事件物件。

(2).extraParameters:可選,傳遞給事件處理程式的額外引數,傳遞多個引數需要通過陣列形式。

jQuery1.3版本新增。

此方法的功能與trigger()類似,但是區別也是明顯的,主要區別如下:

(1).此方法不會觸發瀏覽器預設事件。

(2).此方法觸發jQuery物件集合中第一個元素的事件處理函式,而trigger()所有匹配元素

(2).此方法觸發的事件沒有冒泡效果,而trigger()觸發的事件有冒泡效果。

(3).此方法的返回的是事件處理函式的返回值,而不是據有可鏈性的jQuery物件。

程式碼例項:

[HTML] 純文字檢視 複製程式碼執行程式碼
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="author" content="http://www.softwhy.com/" />
<title>螞蟻部落</title>
<style type="text/css">
div{
  width:200px;
  height:200px;
  border:1px solid blue;
}
</style>
<script src="https://code.jquery.com/jquery-3.1.1.js"></script>
<script type="text/javascript"> 
$(document).ready(function(){ 
  $("div").click(function(){ 
    $("div").append("螞蟻部落"); 
  }); 
  $("#bt").click(function () {
    $("div").triggerHandler("click"); 
  }) 
}) 
</script>
</head>
<body>
<div></div>
<input type="button" id="bt" value="檢視演示"/>
</body>
</html>

點選按鈕可以呼叫triggerHandler()方法,進而觸發註冊在div上的事件處理函式。

相關文章