Jquery 動態(tài)添加元素并添加點擊事件實現(xiàn)過程解析
給動態(tài)添加的元素添加js事件,不能直接添加js事件,需要借助on( )方法,給選擇器指定的子元素添加事件處理函數(shù),并非選擇器本身;
1. 語法
$(selector).on(event,childSelector,data,function) // event _ 需要添加的js事件 //childSelector _ 只能添加到指定的子元素上的事件處理程序 //data _ 調(diào)用函數(shù)時需要傳遞的參數(shù) // function _ js函數(shù)發(fā)生時觸發(fā)的事件
2. 實例
//html代碼
<div id="div1" style="border:1px solid black;"></div>
<script type="text/javascript">
//在id為div_link的元素中動態(tài)追加a
$("#div1").html('<a id="div_link">鏈接點擊</a>');
//觸發(fā)通過js動態(tài)添加的超鏈接a
$("#div1").on("click", "#div_link", function(){
//點擊id為div_link時調(diào)用的處理函數(shù)
});
</script>
3. 相關(guān)概念:事件冒泡、事件捕獲,默認(rèn)為事件冒泡
事件冒泡:從子元素到祖先元素觸發(fā)事件的執(zhí)行; 子元素綁定了click事件,當(dāng)點擊子元素時,瀏覽器會向上查找綁有click事件的父、祖先元素,如有就執(zhí)行;默認(rèn)為事件冒泡;
事件捕獲:從點擊的元素到子元素執(zhí)行觸發(fā)的相同的事件;當(dāng)某個元素中綁定了click事件時,點擊此元素,瀏覽器會向下查找綁有click事件的子、后代元素,如有就執(zhí)行點擊事件;
代碼:
//第一個參數(shù):所綁定的事件;
//第二個參數(shù):觸發(fā)事件后執(zhí)行的方法;
//第三個參數(shù):決定是事件冒泡-false還是事件捕獲-true;默認(rèn)為false-事件冒泡;
elem.addEventListener("click", function(){
......
}, boolean);
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
jQuery插件Timelinr 實現(xiàn)時間軸特效
時間軸是依據(jù)時間順序,把一方面或多方面的事件串聯(lián)起來,形成相對完整的記錄體系,再運用圖文的形式呈現(xiàn)給用戶,本文給大家收集了互聯(lián)網(wǎng)上的效果比較不錯的一款,分享給大家2015-10-10
Jquery原生態(tài)實現(xiàn)表格header頭隨滾動條滾動而滾動
表頭是浮動的,因為內(nèi)容在同一頁面展示,當(dāng)滾動時,看不到列頭,為了改動少只能使用jquery原生態(tài)實現(xiàn)滾動2014-03-03
JQuery中html()方法使用不當(dāng)帶來的陷阱
html方法當(dāng)不傳參數(shù)時用來獲取元素的html內(nèi)容2011-04-04
jQuery學(xué)習(xí)筆記之jQuery的DOM操作
jQuery學(xué)習(xí)筆記之jQuery的DOM操作實現(xiàn)方法, 學(xué)習(xí)jquery與dom操作的朋友可以參考下。2010-12-12
使用jquery與圖片美化checkbox和radio控件的代碼(打包下載)
用jquery實現(xiàn)的對checkbox和radio控件的美化,非常不錯,大家可以通過修改圖片來實現(xiàn)更漂亮的效果。2010-11-11

