XML DOM - Element 物件
Element 物件
Element 物件代表 XML 文件中的一個元素。元素可以包含屬性、其他元素或文字。如果元素包含文字,則文字將以文字節點的形式表示。
重要! 文字始終儲存在文字節點中。DOM 處理中的一個常見錯誤是導航到元素節點並期望它包含文字。然而,即使是最簡單的元素節點,其下方也有一個文字節點。例如,在 <year>2005</year> 中,有一個元素節點 (year),在其下方有一個文字節點,其中包含文字 (2005)。
由於 Element 物件也是一個 Node,因此它繼承了 Node 物件的屬性和方法。
Element 物件屬性
屬性 | 描述 |
---|---|
attributes | 返回元素的屬性的 NamedNodeMap |
baseURI | 返回元素的絕對基 URI |
childNodes | 返回元素的子節點的 NodeList |
firstChild | 返回元素的第一個子節點 |
lastChild | 返回元素的最後一個子節點 |
localName | 返回元素的名稱的區域性部分 |
namespaceURI | 返回元素的名稱空間 URI |
nextSibling | 返回緊跟在元素之後的節點 |
nodeName | 返回節點的名稱,具體取決於其型別 |
nodeType | 返回節點的型別 |
ownerDocument | 返回元素的根元素(文件物件) |
parentNode | 返回元素的父節點 |
prefix | 設定或返回元素的名稱空間字首 |
previousSibling | 返回緊靠元素之前的節點 |
schemaTypeInfo | 返回與元素關聯的型別資訊 |
tagName | 返回元素名稱 |
textContent | 設定或返回元素及其後代的文字內容 |
Element 物件方法
方法 | 描述 |
---|---|
appendChild() | 將新的子節點新增到節點子節點列表的末尾 |
cloneNode() | 克隆節點 |
compareDocumentPosition() | 比較兩個節點的文件位置 |
getAttribute() | 返回值屬性 |
getAttributeNS() | 返回值屬性(帶名稱空間) |
getAttributeNode() | 返回一個 Attribute 物件形式的屬性節點 |
getAttributeNodeNS() | 返回一個 Attribute 物件形式的屬性節點(帶名稱空間) |
getElementsByTagName() | 返回匹配的元素節點及其子節點的 NodeList |
getElementsByTagNameNS() | 返回匹配的元素節點(帶名稱空間)及其子節點的 NodeList |
getFeature(feature,version) | 返回實現指定功能和版本專門 API 的 DOM 物件 |
getUserData(key) | 返回與此節點上的鍵關聯的物件。該物件必須首先透過使用相同的鍵呼叫 setUserData 來設定到此節點 |
hasAttribute() | 返回一個元素是否具有與指定名稱匹配的任何屬性 |
hasAttributeNS() | 返回一個元素是否具有與指定名稱和名稱空間匹配的任何屬性 |
hasAttributes() | 返回一個元素是否具有任何屬性 |
hasChildNodes() | 返回一個元素是否具有任何子節點 |
insertBefore() | 在現有子節點之前插入新的子節點 |
isDefaultNamespace(URI) | 返回指定的 namespaceURI 是否為預設 |
isEqualNode() | 檢查兩個節點是否相等 |
lookupNamespaceURI() | 返回匹配指定字首的名稱空間 URI |
lookupPrefix() | 返回匹配指定名稱空間 URI 的字首 |
normalize() | 將此元素下的所有文字節點(包括屬性)放入“正常”形式,其中只有結構(例如,元素、註釋、處理指令、CDATA 部分和實體引用)分隔文字節點,即不存在相鄰的文字節點或空文字節點 |
removeAttribute() | 移除指定的屬性 |
removeAttributeNS() | 移除指定的屬性(帶名稱空間) |
removeAttributeNode() | 移除指定的屬性節點 |
removeChild() | 移除子節點 |
replaceChild() | 替換子節點 |
setUserData(key,data,handler) | 將物件與元素上的鍵關聯 |
setAttribute() | 新增新屬性 |
setAttributeNS() | 新增新屬性(帶名稱空間) |
setAttributeNode() | 新增新屬性節點 |
setAttributeNodeNS(attrnode) | 新增新屬性節點(帶名稱空間) |
setIdAttribute(name,isId) | 如果 Attribute 物件的 isId 屬性為 true,則此方法宣告指定的屬性為使用者定義的 ID 屬性 |
setIdAttributeNS(uri,name,isId) | 如果 Attribute 物件的 isId 屬性為 true,則此方法宣告指定的屬性(帶名稱空間)為使用者定義的 ID 屬性 |
setIdAttributeNode(idAttr,isId) | 如果 Attribute 物件的 isId 屬性為 true,則此方法宣告指定的屬性為使用者定義的 ID 屬性 |