1. 程式人生 > >jQuery在元素建立之前繫結事件

jQuery在元素建立之前繫結事件

jQuery可以實現在元素建立之前就監聽該元素,這對於動態建立元素後繫結事件非常有用

更多精彩

問題

  1. 對於存在動態新增的元素,則需要動態繫結事件,而為了不導致因為給新元素繫結事件,導致舊元素出現重複繫結的情況。
  2. 一般的解決辦法是先解綁再繫結
function showTip() {
	alert(1);
);

// 第一次繫結
$("#element").find("li").click(showTip);

// 由於新增了相同元素,則需要為舊元素解綁事件
$
("element").find("li").unbind("click"); // 再重新為當前所有元素繫結 $("#element").find("li").click(showTip);

解決

  1. jQuery 擁有先進的事件處理機制,因為 jQuery.on() 方法可以傳遞一個元素的子元素選擇器作為引數,則可以監聽目前還不存在的事件
$("#element").on("click", "li", function () {
	alert(1);
});