JavaScript中Dom操作實(shí)例詳解

本文實(shí)例講述了JavaScript中Dom操作。分享給大家供大家參考,具體如下:

創(chuàng)新互聯(lián)專注于蒙陰網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供蒙陰營(yíng)銷型網(wǎng)站建設(shè),蒙陰網(wǎng)站制作、蒙陰網(wǎng)頁設(shè)計(jì)、蒙陰網(wǎng)站官網(wǎng)定制、成都小程序開發(fā)服務(wù),打造蒙陰網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供蒙陰網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。

博主將按照增刪改查的方式來介紹一下Dom的主要操作。

1、增加節(jié)點(diǎn)

添加節(jié)點(diǎn)的操作主要分為3步:

(1)創(chuàng)建要添加的新節(jié)點(diǎn)
(2)找到要添加到的父節(jié)點(diǎn)
(3)父節(jié)點(diǎn)添加新節(jié)點(diǎn)

參考代碼

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <title></title>
  <link rel="stylesheet" href="">
  <script>
    function add(){
      //新建要增加的節(jié)點(diǎn)
      var li = document.createElement('li');
      var txt = document.createTextNode('北');
      li.appendChild(txt);
      //找到要添加到的父節(jié)點(diǎn)
      var ul = document.getElementsByTagName('ul')[0];
      //添加到父節(jié)點(diǎn)
      ul.appendChild(li);
    }
  </script>
</head>
<body>
  <input type="button" value="增加一個(gè)節(jié)點(diǎn)" onclick="add();">
  <ul>
    <li>東</li>
    <li>南</li>
    <li>西</li>
  </ul>
</body>
</html>

2、刪除節(jié)點(diǎn)

刪除節(jié)點(diǎn)的操作主要分為3步:

(1)先找到要?jiǎng)h除的節(jié)點(diǎn)
(2)找到其父節(jié)點(diǎn)
(3)調(diào)用父節(jié)點(diǎn)的removeChild(刪除的節(jié)點(diǎn))操作

參考代碼

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <title></title>
  <link rel="stylesheet" href="">
  <script>
    function del(){
      //找到要?jiǎng)h除的節(jié)點(diǎn)
      var lis = document.getElementsByTagName('li');
      var lastli = lis[lis.length - 1];
      //讓父節(jié)點(diǎn)來進(jìn)行刪除操作
      lastli.parentNode.removeChild(lastli);
    }
  </script>
</head>
<body>
  <input type="button" value="刪除最后一個(gè)節(jié)點(diǎn)" onclick="del();">
  <ul>
    <li>東</li>
    <li>南</li>
    <li>西</li>
    <li>北</li>
  </ul>
</body>
</html>

3、修改節(jié)點(diǎn)

修改操作主要是修改節(jié)點(diǎn)的屬性,如修改img節(jié)點(diǎn)的src屬性

但是有幾點(diǎn)需要注意:

(1)如果需要操作dom對(duì)象的class屬性,應(yīng)該使用className屬性

document.getElementsByTagName('div')[0].className = 'test2';

(2)如果需要修改dom對(duì)象的樣式,應(yīng)該使用 obj.style.css樣式名

document.getElementsByTagName('div')[0].style.width = parseInt(div.style.width) + 5 + 'px';

(3)遇到有這樣帶-的樣式,如:border-bottom-width,應(yīng)這樣修改樣式,將-去掉,然后將-后的首字母改為大寫

div.style.borderBottomWidth = parseInt(div.style.borderBottomWidth) + 5 + 'px';

4、查找節(jié)點(diǎn)

(1)根據(jù)id進(jìn)行查找,返回對(duì)象:

document.getElementById('test1');

(2)根據(jù)標(biāo)簽名進(jìn)行查找,返回對(duì)象集合:

document.getElementsByTagName('p');

(3)對(duì)于表單元素,按照name值進(jìn)行查找,返回對(duì)象集合:

document.getElementsByName('username');

(4)根據(jù)class名進(jìn)行查找,返回對(duì)象集合:

document.getElementsByClassName('test2');

(5)查找對(duì)象的子節(jié)點(diǎn),childNodes屬性包括文本節(jié)點(diǎn)(換行),返回對(duì)象集合

alert(document.getElementById('test1').childNodes.length);//打印包括文本節(jié)點(diǎn)的數(shù)量
alert(document.getElementById('test1').children.length);//children屬性雖然不符合w3c規(guī)范,但是瀏覽器支持良好

(6)查找對(duì)象的父節(jié)點(diǎn),使用parentNode,返回單個(gè)對(duì)象

document.getElementsByTagName('p')[0].parentNode.style.border = '1px solid black';

感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運(yùn)行工具:http://tools.jb51.net/code/HtmlJsRun測(cè)試上述代碼效果。

更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《JavaScript操作DOM技巧總結(jié)》、《JavaScript頁面元素操作技巧總結(jié)》、《JavaScript事件相關(guān)操作與技巧大全》、《JavaScript查找算法技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》

希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。

當(dāng)前名稱:JavaScript中Dom操作實(shí)例詳解
URL地址:http://muchs.cn/article22/ihcocc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)定制開發(fā)、網(wǎng)站營(yíng)銷、域名注冊(cè)面包屑導(dǎo)航、網(wǎng)站內(nèi)鏈

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁設(shè)計(jì)公司