text()、html()是相對粗獷的方法,直接讀取或設置元素的內容;
另外一些較為細致的操作是對某一個jQuery對象的增加、刪除。
后面講到的替換節(jié)點、包裹節(jié)點用到的比較少。
1、text(), html()
(1)使用html()方法讀取或者設置元素的innerHTML
(2)使用text()方法讀取或設置元素的innerText
2、動態(tài)創(chuàng)建和添加、刪除DOM節(jié)點
2.1、創(chuàng)建DOM節(jié)點
使用$(html字符串)來創(chuàng)建DOM節(jié)點,并且返回一個jQuery對象,然后調用append等方法將新創(chuàng)建的節(jié)點添加到DOM中。$()創(chuàng)建的就是一個jQuery對象,可以完全進行操作
創(chuàng)建radio,使用$('<input name=""/>');,而不要在創(chuàng)建好后通過attr('name','gender')//通過attr()設置name,在IE6下面有問題
2.2、添加和刪除DOM節(jié)點
append 方法用來在元素的末尾追加元素(最后一個子節(jié)點)
prepend,在元素的開始添加元素(第一個子節(jié)點)
after 在元素之后添加元素
before 在元素之前添加元素
其他追加方法(將自己追加到某元素)
子元素.appendTo(父元素);
主動追加到最后一個
子元素.prependTo(父元素)
主動追加到第一個
A.insertBefore(B)
將A加到B前面,等同于B.before(A)
X.insertAfter(Y)
將X追加到Y的后面,等同于Y.after(X)
刪除節(jié)點
empty() 清空某元素下的所有子節(jié)點
內部實現:while(ele.firstChild){ele.removeChild(ele.firstChild);}
remove(selector) 刪除當前元素,返回值為被刪除的元素。還可以繼續(xù)使用被刪除的節(jié)點。比如重新添加到其他節(jié)點下。
2.3、案例
示例:創(chuàng)建一個層
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"> <title>jQuery測試</title> <script type="text/javascript" src="js/jquery-1.12.3.js"></script> <script type="text/javascript"> $(function () { $('#btn').click(function () { //創(chuàng)建一個層,并把該層添加到body中 var divObj = $('<div id="dv"></div>').appendTo($('body')); //divObj.css('width','300px').css('height','50px').css('border','solid 1px red').css('margin','5px'); divObj.css({"width":"300px","height":"50px","border":"solid 1px red","margin":"5px"}); }); }); </script> </head> <body> <input type="button" id="btn" value="創(chuàng)建一個層"/> </body> </html>
效果圖
示例:從json中取數據,動態(tài)創(chuàng)建表格
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"> <title>jQuery測試</title> <script type="text/javascript" src="js/jquery-1.12.3.js"></script> <script type="text/javascript"> var data = {"百度":"http://www.baidu.com","新浪":"http://www.sina.com","谷歌":"http://www.google.com"}; $(function(){ $('#btn').click(function () { //創(chuàng)建table var tableObj = $('<table border="1"></table>'); for(var key in data) { var value=data[key]; //創(chuàng)建tr var trObj = $('<tr><td>'+key+'</td><td><a href="'+value+'">'+key+'</a></td></tr>'); //將tr添加到table內 tableObj.append(trObj); } //將table添加到body當中 $('body').append(tableObj); }); }); </script> </head> <body> <input type="button" id="btn" value="按鈕"/> </body> </html>
效果圖
示例:無刷新評論
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"> <title>jQuery測試</title> <script type="text/javascript" src="js/jquery-1.12.3.js"></script> <script type="text/javascript"> $(function () { $('#btn').click(function () { var uname = $('#txt').val(); var umsg = $('#msg').val(); var trObj = $('<tr><td>'+uname+'</td><td>'+umsg+'</td></tr>'); //$('#tb').append(trObj);//append trObj.appendTo($('#tb'));//appendTo }); }); </script> </head> <body> <table id="tb" border="1" > <tr><td>小明</td><td>你好啊</td></tr> </table> <br/> <input type="text" id="txt"/><br/> <textarea id="msg" rows="5" cols="50"></textarea><br/> <input type="button" id="btn" value="發(fā)表"/><br/> </body> </html>
效果圖
示例:刪除元素
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"> <title>jQuery測試</title> <script type="text/javascript" src="js/jquery-1.12.3.js"></script> <style type="text/css"> .cls{ width:300px; height:200px; border:solid 1px red; } </style> <script type="text/javascript"> $(function () { $('#btn').click(function () { // $('#dv').empty();//清空層中的元素 // $('#dv').remove();//層沒了,相當于自殺 $('input').remove('.mycls');//移除應用了cls樣式的層 }); }); </script> </head> <body> <input type="button" id="btn" value="刪除"/> <div id="dv" class="cls"> <input type="text" class="mycls" value="mycls"/> <input type="text" value="沒有樣式"/> </div> </body> </html>
效果圖
示例:權限選擇案例:一個下拉框中的選項放置另一個下拉列表框選項中
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"> <title>jQuery測試</title> <script type="text/javascript" src="js/jquery-1.12.3.js"></script> <script type="text/javascript"> $(function () { $('#toRight').click(function () { $('#se1 :selected').appendTo($('#se2')); $('select option').attr('selected',false); }); $('#toLeft').click(function () { $('#se2 :selected').appendTo($('#se1')); $('select option').attr('selected',false); }); $('#toAllRight').click(function () { $('#se1 option').appendTo($('#se2')); $('select option').attr('selected',false); }); $('#toAllLeft').click(function () { $('#se2 option').appendTo($('#se1')); $('select option').attr('selected',false); }); }); </script> </head> <body> <div > <select multiple="multiple" id="se1"> <option>添加</option> <option>刪除</option> <option>修改</option> <option>查詢</option> <option>打印</option> </select> <div > <input type="button" value=">" id="toRight"/> <input type="button" value="<" id="toLeft"/> <input type="button" value=">>" id="toAllRight"/> <input type="button" value="<<" id="toAllLeft"/> </div> <select multiple="multiple" id="se2"></select> </div> </body> </html>
效果圖
3、替換節(jié)點和包裹節(jié)點
3.1、替換節(jié)點
$("br").replaceWith("<hr/>");
用<hr/>替換br
$('<br/>').replaceAll('hr');
用<br/>元素替換所有的hr
調用者也得是選擇器選擇到的元素
3.2、包裹節(jié)點
wrap()方法用來將所有元素逐個用指定標簽包裹
wrapAll()
wrapInner()//在內部圍繞
另外有需要云服務器可以了解下創(chuàng)新互聯scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
分享題目:jQuery操作DOM-創(chuàng)新互聯
文章位置:http://jinyejixie.com/article40/dphdeo.html
成都網站建設公司_創(chuàng)新互聯,為您提供網站排名、搜索引擎優(yōu)化、網站收錄、網站維護、動態(tài)網站、網站建設
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯