自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

JavaScript DOM基礎(chǔ)操作實(shí)例

開發(fā) 前端
文檔對象模型(Document Object Model),通常簡稱為DOM,是網(wǎng)站內(nèi)容與JavaScript互通的接口。自JavaScript成為最常用的語言時(shí)JavaScript和DOM通常被視為獨(dú)立的實(shí)體。DOM接口用于存取、遍歷和控制HTML和XML文檔。

文檔對象模型(Document Object Model),通常簡稱為DOM,是網(wǎng)站內(nèi)容與JavaScript互通的接口。自JavaScript成為最常用的語言時(shí)JavaScript和DOM通常被視為獨(dú)立的實(shí)體。DOM接口用于存取、遍歷和控制HTML和XML文檔。下面我們將簡單的介紹一些JavaScript DOM的基本操作實(shí)例,包括建立、增加、刪除、克隆、訪問節(jié)點(diǎn)等等。

51CTO推薦閱讀:JavaScript DOM的本質(zhì)及操作方法

1. getElementById(id)     

這是通過id來訪問某一元素,最常用的之一,例:    

  1. <html> 
  2.          <body> 
  3.          <div id="myid"> 
  4.          test  
  5.          </div> 
  6.          <script language="javascript"> 
  7.          alert(document.getElementById("myid").innerHTML);  
  8.          </script> 
  9.          </body> 
  10. </html> 

注意點(diǎn):如果元素的ID不是***,則會(huì)取得***個(gè)該ID名稱的元素。

2. getElementsByName(name)     

這是通過name來取得某一堆元素(作為數(shù)組),看 Element后面有個(gè)小s就知道了,ID是HTML文檔中要求***的,name可以不是***,如checkbox、radio等地方會(huì)用到多個(gè) input用同一個(gè)name來識(shí)別是否為同黨。對了,getElementsByName(name)僅用于取得input、radio、 checkbox等元素,如<input name="myradio" type="radio" />。

3. getElementsByTagName(tagname)

看這方法就知道這也是取得某一堆元素(作為數(shù)組),是通過TagName也就是標(biāo)簽名來取得。你可以遍歷這個(gè)數(shù)組獲得每一個(gè)單獨(dú)的元素。當(dāng)一個(gè)DOM結(jié)構(gòu)很大時(shí),可以通過它來有效地縮小搜查范圍。    

  1. <html>           
  2.          <head> 
  3.          <script> 
  4.          function test() {  
  5.          testall=document.getElementsByTagName("body");  
  6.          testbody=testall.item(0); //獲得所有tagName是body的元素(當(dāng)然每個(gè)頁面只有一個(gè))  
  7.          testall=testbody.getElementsByTagName("p");// 獲得body子元素種的所有P元素  
  8.          testnode=testall.item(1); // 獲得第二個(gè)P元素           
  9.          alert(testnode.firstChild.nodeValue); //顯示這個(gè)元素的文本         }  
  10.          </script> 
  11.          </head> 
  12.          <body> 
  13.          <p>hi</p> 
  14.          <p>hello</p> 
  15.          <script language="javascript"> 
  16.          test();  
  17.          </script> 
  18.          </body> 
  19. </html> 

4. appendChild(node)

向當(dāng)前的元素(應(yīng)該叫對象比較恰當(dāng))追加節(jié)點(diǎn)。    

  1. <html> 
  2.          <body> 
  3.          <head> 
  4.          </head> 
  5.          <div id="test"></div> 
  6.          <script type="text/javascript"> 
  7.          var newdiv=document.createElement("div")  
  8.          var newtext=document.createTextNode("A new div")           
  9.          newdiv.appendChild(newtext)  
  10.          document.getElementById("test").appendChild(newdiv)  
  11.          </script> 
  12.          </body> 
  13. </html> 

剛才我在***個(gè)例子中為了顯示出內(nèi)容,用了innerHTML,剛才看到文章才得知innerHTMl不屬于DOM。 

5. removeChild(childreference)

刪除當(dāng)前節(jié)點(diǎn)的子節(jié)點(diǎn),返回被刪除的節(jié)點(diǎn)。這個(gè)被刪除的節(jié)點(diǎn)可以被插入到別的地方。

  1. <html> 
  2.          <body> 
  3.          <div id="parent"><div id="child">A child</div></div> 
  4.          <script language="javascript"> 
  5.          var childnode=document.getElementById("child")  
  6.          var removednode=document.getElementById("parent").removeChild(childnode)  
  7.          </script> 
  8.          </body> 
  9. </html> 

6. cloneNode(deepBoolean)

復(fù)制并返回當(dāng)前節(jié)點(diǎn)的復(fù)制節(jié)點(diǎn),復(fù)制節(jié)點(diǎn)是一個(gè)孤立節(jié)點(diǎn),它復(fù)制了原節(jié)點(diǎn)的屬性,在把這個(gè)新節(jié)點(diǎn)加入到document前,根據(jù)需要修改ID屬性確保其ID的***。這個(gè)方法支持一個(gè)布爾參數(shù),當(dāng)deepBoolean設(shè)置true時(shí),復(fù)制當(dāng)前節(jié)點(diǎn)的所有子節(jié)點(diǎn),包括該節(jié)點(diǎn)內(nèi)的文本。

  1. <html> 
  2.          <body> 
  3.          <p id="mynode">test</p> 
  4.          <script language="javascript"> 
  5.          p=document.getElementById("mynode")   
  6.         ppclone = p.cloneNode(true);  
  7.          p.parentNode.appendChild(pclone);  
  8.          </script> 
  9.          </body> 
  10. </html> 

7. replaceChild(newChild, oldChild)

把當(dāng)前節(jié)點(diǎn)的一個(gè)子節(jié)點(diǎn)換成另一個(gè)節(jié)點(diǎn)。

  1. <html> 
  2.          <body> 
  3.          <div id="mynode2"> 
  4.          <span id="orispan">span</span> 
  5.          </div> 
  6.          <script language="javascript"> 
  7.          var orinode=document.getElementById("orispan");  
  8.          var newnode=document.createElement("p");  
  9.          var text=document.createTextNode("test ppp ");  
  10.          newnode.appendChild(text);  
  11.          document.getElementById("mynode2").replaceChild(newnode, orinode);  
  12.          </script> 
  13.          </body> 
  14. </html> 

【編輯推薦】

  1. JavaScript DOM特性與應(yīng)用詳解
  2. JavaScript DOM修改文檔樹方法實(shí)例
  3. JavaScript DOM文檔遍歷實(shí)戰(zhàn) 
責(zé)任編輯:王曉東 來源: 百度空間
相關(guān)推薦

2010-09-10 14:12:07

JavaScript

2017-07-19 14:26:01

前端JavaScriptDOM

2010-09-28 14:52:57

JavaScriptDOM

2010-09-08 16:50:11

JavaScriptDOM操作

2010-09-28 15:07:48

JavaScript

2010-09-08 15:47:08

JavsScriptJavaScript

2016-04-06 11:29:58

JavaScriptDOM操作

2010-09-08 09:59:46

JavaScriptDOM操作

2010-09-08 17:26:46

JavaScript

2010-09-28 15:12:27

Javascript

2010-09-28 14:12:50

Javascript

2009-08-18 16:04:12

C# 操作Excel

2010-09-09 13:55:47

XML DOM

2010-09-13 14:24:17

JavaScript

2019-12-11 09:23:51

JavaScriptHTMLXML

2013-09-02 16:59:34

JavaScriptHTML

2010-09-15 14:40:07

HTMLposition屬性

2010-09-10 16:21:58

JavaScript

2012-04-26 08:29:22

DOM

2013-09-03 10:40:45

JavaScriptWindows
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號