jquery中繫結事件一般使用bind,或者click,但是這只能是對已經載入好的元素定義事件,那些後來新增插入的元素則需要另行繫結。在1.7版本以前使用live。但是在1.8版本以後推薦使用on。這裡介紹jquery中如何給動態新增的元素繫結事件
在實際開發中會遇到要給動態生成的html元素繫結觸發事件的情況
"testdiv
">
需要給裡面動態新增的標籤新增click事件
方法一:繫結live事件(live事件只在jquery1.9以下才支援,高版本不支援)。
jquery 1.7版以前使用live動態繫結事件
$(
"#testdiv ul li"
).live(
"click"
,
function
());
方法二:利用on()事件繫結 ($(parentele).on("click",".thisele",function(){})
//這裡的parentele是 thisele的父輩元素或者祖先元素,parentele可以是document,也可以是body等。<
br
><
br
><
br
>//
注意:如果此時呼叫的函式是外部定義好的函式,那在呼叫的時候不要加(),不然會跳過點選事件直接觸發函式
jquery 1.7版以後使用on動態繫結事件
$("#testdiv ul").on("click","li", function() );
//主動觸發某個<
li
>的click事件
$(
"#testdiv ul li"
).live(
"click"
,
function
());
給Jquery動態新增的元素新增事件
我想很多人都會向我一樣曾經 被新元素的事件繫結困惑很久也就是 在頁面載入完成後給元素繫結了事件,但又新增加的元素上卻沒有繫結任何事件。js的事件監聽跟css不一樣,css只要設定好了樣式,不論是原來就有的還是新新增的,都有一樣的表現。而事件監聽不是,你必須給每乙個元素單獨繫結事件。常見的例子是處理 ...
給Jquery動態新增的元素新增事件
我想很多人都會向我一樣曾經 被新元素的事件繫結困惑很久也就是 在頁面載入完成後給元素繫結了事件,但又新增加的元素上卻沒有繫結任何事件。js的事件監聽跟css不一樣,css只要設定好了樣式,不論是原來就有的還是新新增的,都有一樣的表現。而事件監聽不是,你必須給每乙個元素單獨繫結事件。常見的例子是處理 ...
jquery給動態新增的元素繫結事件
jquery給動態新增的元素繫結事件的方法 jquery中繫結事件一般使用bind,或者click,但是這只能是對已經載入好的元素定義事件,那些後來新增插入的元素則需要另行繫結。在1.7版本以前使用live。但是在1.8版本以後推薦使用on。需要給jquery 1.7版以前使用live動態繫結事件 ...