javascript之DOM技術(一)

全文連接javascript


None.gifTEXT_NODE                                         3
None.gifCDATA_SECTION_NODE                 4
None.gifENTITY_REFERENCE_NODE            5
None.gifENTITY_NODE                                     6
None.gifPROCESSING_INSTRCTION_NODE       7
None.gifCOMMENT_NODE                              8
None.gifDOCUMENT_NODE                            9
None.gifDOCUMENT_TYPE_NODE               10
None.gifDOCUMENT_FRAGMENT_NODE   11
None.gifNOTATION_NODE                              12html


IE6不支持,不過你能夠自定義一個JS對象Node。

3.處理特性
處理特性能夠使用標準的NameNodeMap中的方法:
getNamedItem(name) removeNamedItem(name)  setNamedItem(node)    item(pos)

好比:<p id="test">測試</p>
假設變量oP是上面的p節點的引用,咱們要訪問oP的id屬性:
var sId=oP.attributes.getNamedItem("id").nodeValue;

這些方法用起來很累贅,因此DOM又定義了三個方法來簡化:
getAttribute(name)         ——返回名稱爲name的屬性的值
setAttribute(name,value)   ——顧名思義
removeAttribute(name)      ——顧名思義  

上面的例子能夠改寫爲:
var sId=oP.getAttribute("name");

4.訪問指定節點:
熟知的getElementByTagName(name),getElementByName(name),getElementById(id)三個方法,再也不展開。

5.建立和操做節點:
(1)建立新節點,一張IE(6.0)和FF對DOM Level1的建立新節點方法支持的對照表:
java

None.gif方法                                                               IE                               FF
None.gifcreateAttribute(name)                                 Y                                Y
None.gifcreateCDATASection(text)                        N                                Y
None.gifcreateComment(text)                                    Y                                Y
None.gifcreateDocumentFragment()                        Y                                Y
None.gifcreateElement(tagName)                             Y                                 Y
None.gifcreateEntityReference(name)                     N                                 Y
None.gifcreateProcessingInstruction(
None.giftarget,data)                                                   N                                  Y
None.gifcreateTextNode(text)                                  Y                                   Ynode



下面介紹經常使用的幾個方法

(2)createElement(),createTextNode(),appendChild()
例子:
app

None.gif<html>
None.gif    <head>
None.gif        <title>createElement() Example</title>
None.gif        <script type="text/javascript">
ExpandedBlockStart.gif            function createMessage() {
InBlock.gif                var oP = document.createElement("p");
InBlock.gif                var oText = document.createTextNode("Hello World!");
InBlock.gif                oP.appendChild(oText);
InBlock.gif                document.body.appendChild(oP);
ExpandedBlockEnd.gif            }

None.gif        </script>
None.gif    </head>
None.gif    <body onload="createMessage()">
None.gif    </body>
None.gif</html>
None.gifide


在頁面載入後,建立節點oP,並建立一個文本節點oText,oText經過appendChild方法附加在oP節點上,爲了實際顯示出來,將oP節點經過appendChild方法附加在body節點上。此例子將顯示Hello World!測試

相關文章
相關標籤/搜索