Jquery 動(dòng)態(tài)添加元素并添加點(diǎn)擊事件實(shí)現(xiàn)過程解析
給動(dòng)態(tài)添加的元素添加js事件,不能直接添加js事件,需要借助on( )方法,給選擇器指定的子元素添加事件處理函數(shù),并非選擇器本身;
1. 語法
$(selector).on(event,childSelector,data,function) // event _ 需要添加的js事件 //childSelector _ 只能添加到指定的子元素上的事件處理程序 //data _ 調(diào)用函數(shù)時(shí)需要傳遞的參數(shù) // function _ js函數(shù)發(fā)生時(shí)觸發(fā)的事件
2. 實(shí)例
//html代碼 <div id="div1" style="border:1px solid black;"></div> <script type="text/javascript"> //在id為div_link的元素中動(dòng)態(tài)追加a $("#div1").html('<a id="div_link">鏈接點(diǎn)擊</a>'); //觸發(fā)通過js動(dòng)態(tài)添加的超鏈接a $("#div1").on("click", "#div_link", function(){ //點(diǎn)擊id為div_link時(shí)調(diào)用的處理函數(shù) }); </script>
3. 相關(guān)概念:事件冒泡、事件捕獲,默認(rèn)為事件冒泡
事件冒泡:從子元素到祖先元素觸發(fā)事件的執(zhí)行; 子元素綁定了click事件,當(dāng)點(diǎn)擊子元素時(shí),瀏覽器會(huì)向上查找綁有click事件的父、祖先元素,如有就執(zhí)行;默認(rèn)為事件冒泡;
事件捕獲:從點(diǎn)擊的元素到子元素執(zhí)行觸發(fā)的相同的事件;當(dāng)某個(gè)元素中綁定了click事件時(shí),點(diǎn)擊此元素,瀏覽器會(huì)向下查找綁有click事件的子、后代元素,如有就執(zhí)行點(diǎn)擊事件;
代碼:
//第一個(gè)參數(shù):所綁定的事件; //第二個(gè)參數(shù):觸發(fā)事件后執(zhí)行的方法; //第三個(gè)參數(shù):決定是事件冒泡-false還是事件捕獲-true;默認(rèn)為false-事件冒泡; elem.addEventListener("click", function(){ ...... }, boolean);
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- JQuery事件委托(適用于給動(dòng)態(tài)生成的腳本元素添加事件)
- jQuery實(shí)現(xiàn)為動(dòng)態(tài)添加的元素綁定事件實(shí)例分析
- jQuery動(dòng)態(tài)添加元素?zé)o法觸發(fā)綁定事件的解決方法分析
- jQuery如何獲取動(dòng)態(tài)添加的元素
- jQuery給動(dòng)態(tài)添加的元素綁定事件的方法
- Jquery對(duì)新插入的節(jié)點(diǎn) 綁定Click事件失效的解決方法
- jquery動(dòng)態(tài)添加元素事件失效問題解決方法
- jQuery動(dòng)態(tài)添加元素后元素注冊(cè)事件失效解決
相關(guān)文章
JQuery擴(kuò)展插件Validate 3通過參數(shù)設(shè)置錯(cuò)誤信息
最終顯示在頁面上的錯(cuò)誤分為兩種:第一種是默認(rèn)錯(cuò)誤信息,該信息已經(jīng)被定義在插件中了,可以手動(dòng)修改。2011-09-09jQuery實(shí)用小技巧_輸入框文字獲取和失去焦點(diǎn)的簡(jiǎn)單實(shí)例
下面小編就為大家?guī)硪黄猨Query實(shí)用小技巧_輸入框文字獲取和失去焦點(diǎn)的簡(jiǎn)單實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-08-08jQuery pjax 應(yīng)用簡(jiǎn)單示例
此篇文章給大家分享了jQuery pjax 應(yīng)用的一些簡(jiǎn)單示例,希望可以幫助到大家2018-09-09