JavaTM 2 Platform
Standard Ed. 6

org.w3c.dom
介面 Node

所有已知子介面:
Attr, CDATASection, CharacterData, Comment, Detail, DetailEntry, Document, DocumentFragment, DocumentType, Element, Entity, EntityReference, Node, Notation, ProcessingInstruction, SOAPBody, SOAPBodyElement, SOAPElement, SOAPEnvelope, SOAPFault, SOAPFaultElement, SOAPHeader, SOAPHeaderElement, Text, Text
所有已知實作類別:
IIOMetadataNode, SOAPPart

public interface Node

Node 介面是整個文檔物件模型的主要資料型別。它表示該文檔階層樹中的單個節點。當實作 Node 介面的所有物件公開處理子節點的方法時,不是實作 Node 介面的所有物件都有子節點。例如,Text 節點可能沒有子節點,且將子節點添加到這樣的節點將導致引發 DOMException

包括屬性 nodeNamenodeValueattributes 作為一種獲取節點資訊的機制,無需向下強制轉換為特定的派生介面。在沒有對特定的 nodeType(如 ElementnodeValueCommentattributes)的屬性的明顯映射的情況下,這將返回 null。注意,特定的介面可能包含其他更方便的機制來獲取和設置相關資訊。

nodeNamenodeValueattributes 的值將根據以下節點型別的不同而不同。

Interface nodeName nodeValue attributes
Attr Attr.name 相同 Attr.value 相同 null
CDATASection "#cdata-section" CharacterData.data 相同,CDATA 節的內容 null
Comment "#comment" CharacterData.data 相同,該註釋的內容 null
Document "#document" null null
DocumentFragment "#document-fragment" null null
DocumentType DocumentType.name 相同 null null
Element Element.tagName 相同 null NamedNodeMap
Entity entity name null null
EntityReference 參考的實體名稱 null null
Notation notation name null null
ProcessingInstruction ProcessingInstruction.target 相同 ProcessingInstruction.data 相同 null
Text "#text" CharacterData.data 相同,該文本節點的內容 null

另請參見 Document Object Model (DOM) Level 3 Core Specification


欄位摘要
static short ATTRIBUTE_NODE
          該節點為 Attr
static short CDATA_SECTION_NODE
          該節點為 CDATASection
static short COMMENT_NODE
          該節點為 Comment
static short DOCUMENT_FRAGMENT_NODE
          該節點為 DocumentFragment
static short DOCUMENT_NODE
          該節點為 Document
static short DOCUMENT_POSITION_CONTAINED_BY
          參考節點包含該節點。
static short DOCUMENT_POSITION_CONTAINS
          該節點包含參考節點。
static short DOCUMENT_POSITION_DISCONNECTED
          兩個節點斷開連接。
static short DOCUMENT_POSITION_FOLLOWING
          該節點在參考節點之後。
static short DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC
          對前後位置的確定是特定於實作的。
static short DOCUMENT_POSITION_PRECEDING
          第二個節點在參考節點之前。
static short DOCUMENT_TYPE_NODE
          該節點為 DocumentType
static short ELEMENT_NODE
          該節點為 Element
static short ENTITY_NODE
          該節點為 Entity
static short ENTITY_REFERENCE_NODE
          該節點為 EntityReference
static short NOTATION_NODE
          該節點為 Notation
static short PROCESSING_INSTRUCTION_NODE
          該節點為 ProcessingInstruction
static short TEXT_NODE
          該節點為 Text 節點。
 
方法摘要
 Node appendChild(Node newChild)
          將節點 newChild 添加到此節點的子節點列表的末尾。
 Node cloneNode(boolean deep)
          返回此節點的副本,即允當節點的一般複製建構子。
 short compareDocumentPosition(Node other)
          就節點在文檔中的位置並按照文檔的順序,比較參考節點(即在其上調用此方法的節點)與作為參數傳遞的節點。
 NamedNodeMap getAttributes()
          包含此節點的屬性的 NamedNodeMap(如果它是 Element);否則為 null
 String getBaseURI()
          此節點的絕對基 URI;如果實作不能獲得絕對 URI,則為 null
 NodeList getChildNodes()
          包含此節點的所有子節點的 NodeList
 Object getFeature(String feature, String version)
          此方法返回一個特定的物件,該物件實作指定功能或版本的特定 API,如下所述。
 Node getFirstChild()
          此節點的第一個子節點。
 Node getLastChild()
          此節點的最後一個節點。
 String getLocalName()
          返回此節點限定名稱的本地部分。
 String getNamespaceURI()
          此節點的名稱空間 URI;如果它未被指定,則返回 null(參見)。
 Node getNextSibling()
          直接在此節點之後的節點。
 String getNodeName()
          此節點的名稱,取決於其型別;參見上表。
 short getNodeType()
          表示基礎物件的型別的節點,如上所述。
 String getNodeValue()
          此節點的值,取決於其型別;參見上表。
 Document getOwnerDocument()
          與此節點相關的 Document 物件。
 Node getParentNode()
          此節點的父節點。
 String getPrefix()
          此節點的名稱空間前綴;如果它未被指定,則為 null
 Node getPreviousSibling()
          直接在此節點之前的節點。
 String getTextContent()
          此屬性返回此節點及其後代的文本內容。
 Object getUserData(String key)
          檢索與此節點上的某個鍵相關聯的物件。
 boolean hasAttributes()
          返回此節點(如果它是一個元素)是否具有任何屬性。
 boolean hasChildNodes()
          返回此節點是否具有任何子節點。
 Node insertBefore(Node newChild, Node refChild)
          在現有子節點 refChild 之前插入節點 newChild
 boolean isDefaultNamespace(String namespaceURI)
          此方法檢查指定的 namespaceURI 是否是預設名稱空間。
 boolean isEqualNode(Node arg)
          測試兩個節點是否相等。
 boolean isSameNode(Node other)
          返回此節點是否是與給定節點相同的節點。
 boolean isSupported(String feature, String version)
          測試 DOM 實作是否實作特定功能,且該功能是否受此節點支持,如下所述。
 String lookupNamespaceURI(String prefix)
          從此節點開始,尋找與給定前綴相關的名稱空間 URI。
 String lookupPrefix(String namespaceURI)
          從此節點開始,尋找與給定名稱空間 URI 相關的前綴。
 void normalize()
          將此 Node 之下完整的深層子階層樹中所有 Text 節點(包括屬性節點)放入只有結構(如元素、註釋、處理指令、CDATA 節和實體參考)分隔 Text 節點的“常規”形式,也就是說,既沒有相鄰的 Text 節點,也沒有空 Text 節點。
 Node removeChild(Node oldChild)
          從子節點列表中移除 oldChild 所指示的子節點,並將其返回。
 Node replaceChild(Node newChild, Node oldChild)
          將子節點列表中的子節點 oldChild 替換為 newChild,並返回 oldChild 節點。
 void setNodeValue(String nodeValue)
          此節點的值,取決於其型別;參見上表。
 void setPrefix(String prefix)
          此節點的名稱空間前綴;如果未指定,則為 null
 void setTextContent(String textContent)
          此屬性返回此節點及其後代的文本內容。
 Object setUserData(String key, Object data, UserDataHandler handler)
          將對象與此節點上的鍵相關聯。
 

欄位詳細資訊

ELEMENT_NODE

static final short ELEMENT_NODE
該節點為 Element

另請參見:
常數欄位值

ATTRIBUTE_NODE

static final short ATTRIBUTE_NODE
該節點為 Attr

另請參見:
常數欄位值

TEXT_NODE

static final short TEXT_NODE
該節點為 Text 節點。

另請參見:
常數欄位值

CDATA_SECTION_NODE

static final short CDATA_SECTION_NODE
該節點為 CDATASection

另請參見:
常數欄位值

ENTITY_REFERENCE_NODE

static final short ENTITY_REFERENCE_NODE
該節點為 EntityReference

另請參見:
常數欄位值

ENTITY_NODE

static final short ENTITY_NODE
該節點為 Entity

另請參見:
常數欄位值

PROCESSING_INSTRUCTION_NODE

static final short PROCESSING_INSTRUCTION_NODE
該節點為 ProcessingInstruction

另請參見:
常數欄位值

COMMENT_NODE

static final short COMMENT_NODE
該節點為 Comment

另請參見:
常數欄位值

DOCUMENT_NODE

static final short DOCUMENT_NODE
該節點為 Document

另請參見:
常數欄位值

DOCUMENT_TYPE_NODE

static final short DOCUMENT_TYPE_NODE
該節點為 DocumentType

另請參見:
常數欄位值

DOCUMENT_FRAGMENT_NODE

static final short DOCUMENT_FRAGMENT_NODE
該節點為 DocumentFragment

另請參見:
常數欄位值

NOTATION_NODE

static final short NOTATION_NODE
該節點為 Notation

另請參見:
常數欄位值

DOCUMENT_POSITION_DISCONNECTED

static final short DOCUMENT_POSITION_DISCONNECTED
兩個節點斷開連接。斷開連接的節點之間的順序始終特定於實作。

另請參見:
常數欄位值

DOCUMENT_POSITION_PRECEDING

static final short DOCUMENT_POSITION_PRECEDING
第二個節點在參考節點之前。

另請參見:
常數欄位值

DOCUMENT_POSITION_FOLLOWING

static final short DOCUMENT_POSITION_FOLLOWING
該節點在參考節點之後。

另請參見:
常數欄位值

DOCUMENT_POSITION_CONTAINS

static final short DOCUMENT_POSITION_CONTAINS
該節點包含參考節點。包含的節點也總是在前面。

另請參見:
常數欄位值

DOCUMENT_POSITION_CONTAINED_BY

static final short DOCUMENT_POSITION_CONTAINED_BY
參考節點包含該節點。包含的節點也總是在後面。

另請參見:
常數欄位值

DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC

static final short DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC
對前後位置的確定是特定於實作的。

另請參見:
常數欄位值
方法詳細資訊

getNodeName

String getNodeName()
此節點的名稱,取決於其型別;參見上表。


getNodeValue

String getNodeValue()
                    throws DOMException
此節點的值,取決於其型別;參見上表。當將它定義為 null 時,設置它無效,包括節點為只讀的情況。

拋出:
DOMException - DOMSTRING_SIZE_ERR: 在它返回的字元多於實作平臺上 DOMString 變數中適合的字元時引發此異常。

setNodeValue

void setNodeValue(String nodeValue)
                  throws DOMException
此節點的值,取決於其型別;參見上表。當將它定義為 null 時,設置它無效,包括節點為只讀的情況。

拋出:
DOMException - NO_MODIFICATION_ALLOWED_ERR: 當節點為只讀且未將它定義為 null 時引發此異常。

getNodeType

short getNodeType()
表示基礎物件的型別的節點,如上所述。


getParentNode

Node getParentNode()
此節點的父節點。所有節點(除 AttrDocumentDocumentFragmentEntityNotation)都可以有父節點。但是,如果剛創建節點且尚未添加到階層樹,或如果已經從階層樹中移除了它,此值為 null


getChildNodes

NodeList getChildNodes()
包含此節點的所有子節點的 NodeList。如果不存在子節點,則這是不包含節點的 NodeList


getFirstChild

Node getFirstChild()
此節點的第一個子節點。如果沒有這樣的節點,則返回 null


getLastChild

Node getLastChild()
此節點的最後一個節點。如果沒有這樣的節點,則返回 null


getPreviousSibling

Node getPreviousSibling()
直接在此節點之前的節點。如果沒有這樣的節點,則返回 null


getNextSibling

Node getNextSibling()
直接在此節點之後的節點。如果沒有這樣的節點,則返回 null


getAttributes

NamedNodeMap getAttributes()
包含此節點的屬性的 NamedNodeMap(如果它是 Element);否則為 null


getOwnerDocument

Document getOwnerDocument()
與此節點相關的 Document 物件。這也是用於創建新節點的 Document 物件。當此節點為 Document 或未與任何 Document 一起使用的 DocumentType 時,返回 null

從以下版本開始:
DOM Level 2

insertBefore

Node insertBefore(Node newChild,
                  Node refChild)
                  throws DOMException
在現有子節點 refChild 之前插入節點 newChild。如果 refChildnull,則將 newChild 插入到子節點列表的末尾。
如果 newChildDocumentFragment 物件,則以同樣的順序將其所有節點插入 refChild 之前。如果 newChild 已經存在於階層樹中,則首先移除它。

註:將一個節點插入本身之前與實作有關。

參數:
newChild - 要插入的節點。
refChild - 參考節點,即必須在其前插入新節點的節點。
返回:
要插入的節點。
拋出:
DOMException - HIERARCHY_REQUEST_ERR:在以下情況下引發此異常:如果此節點為不允許 newChild 節點型別的子節點的型別;或者如果要插入的節點為此節點的一個祖先或此節點本身;或者如果此節點為 Document 型別且 DOM 應用程序試圖插入第二個 DocumentTypeElement 節點。
WRONG_DOCUMENT_ERR:如果 newChild 是從不同的文檔創建的,不是從創建此節點的文檔創建的,則引發此異常。
NO_MODIFICATION_ALLOWED_ERR:如果此節點為只讀的,或者如果要插入的節點的父節點為只讀的,則引發此異常。
NOT_FOUND_ERR: 如果 refChild 不是此節點的子節點。
NOT_SUPPORTED_ERR: 如果此節點為 Document 型別,如果 DOM 實作不支持插入 DocumentTypeElement 節點,則可能引發此異常。
從以下版本開始:
DOM Level 3

replaceChild

Node replaceChild(Node newChild,
                  Node oldChild)
                  throws DOMException
將子節點列表中的子節點 oldChild 替換為 newChild,並返回 oldChild 節點。
如果 newChildDocumentFragment 物件,則將 oldChild 替換為所有 DocumentFragment 子節點,它們都以相同的順序插入。如果 newChild 已經存在於階層樹中,則首先移除它。

註:將節點替換為它本身與實作有關。

參數:
newChild - 要在子節點列表中放入的新節點。
oldChild - 列表中被替換的節點。
返回:
替換的節點。
拋出:
DOMException - HIERARCHY_REQUEST_ERR: 在以下情況下引發此異常:如果此節點為不允許 newChild 節點型別的子節點的型別;或者如果要放入的節點為此節點的一個祖先或此節點本身;或者如果此節點為 Document 型別且替換操作的結果將第二個 DocumentTypeElement 添加到 Document 上。
WRONG_DOCUMENT_ERR: 如果 newChild 是從不同的文檔創建的,不是從創建此節點的文檔創建的,則引發此異常。
NO_MODIFICATION_ALLOWED_ERR: 如果此節點或新節點的父節點為只讀的,則引發此異常。
NOT_FOUND_ERR: 如果 oldChild 不是此節點的子節點,則引發此異常。
NOT_SUPPORTED_ERR: 如果此節點為 Document 型別,則如果 DOM 實作不支持替換 DocumentType 子節點或 Element 子節點,則可能引發此異常。
從以下版本開始:
DOM Level 3

removeChild

Node removeChild(Node oldChild)
                 throws DOMException
從子節點列表中移除 oldChild 所指示的子節點,並將其返回。

參數:
oldChild - 移除的節點。
返回:
移除的節點。
拋出:
DOMException - NO_MODIFICATION_ALLOWED_ERR: 如果此節點為只讀的,則引發此異常。
NOT_FOUND_ERR: 如果 oldChild 不是此節點的子節點。
NOT_SUPPORTED_ERR: 如果此節點為 Document 型別,則如果 DOM 實作不支持移除 DocumentType 子節點或 Element 子節點,則可能引發此異常。
從以下版本開始:
DOM Level 3

appendChild

Node appendChild(Node newChild)
                 throws DOMException
將節點 newChild 添加到此節點的子節點列表的末尾。如果 newChild 已經存在於階層樹中,則首先移除它。

參數:
newChild - 要添加的節點。如果它是 DocumentFragment 物件,則將文檔片段的整個內容移動到此節點的子列表中
返回:
添加的節點。
拋出:
DOMException - HIERARCHY_REQUEST_ERR: 在以下情況下引發此異常:如果此節點為不允許 newChild 節點型別的子節點的型別;或者如果要追加的節點為此節點的一個祖先或此節點本身;或者如果此節點為 Document 型別且 DOM 應用程序試圖追加第二個 DocumentTypeElement 節點。
WRONG_DOCUMENT_ERR: 如果 newChild 是從不同的文檔創建的,不是從創建此節點的文檔創建的,則引發此異常。
NO_MODIFICATION_ALLOWED_ERR:如果此節點為只讀的,或者如果要插入的節點以前的父節點為只讀的,則引發此異常。
NOT_SUPPORTED_ERR: 如果 newChild 節點為 Document 節點的子節點,則如果 DOM 實作不支持移除 DocumentType 子節點或 Element 子節點,則可能引發此異常。
從以下版本開始:
DOM Level 3

hasChildNodes

boolean hasChildNodes()
返回此節點是否具有任何子節點。

返回:
如果此節點沒有任何子節點,則返回 true;否則返回 false

cloneNode

Node cloneNode(boolean deep)
返回此節點的副本,即允當節點的一般複製建構子。副本節點沒有父節點(parentNodenull),且沒有使用者資料。與導入的節點相關的使用者資料不攜帶過來。但是,如果隨相關資料一起指定了任何 UserDataHandlers,則將在此方法返回之前用適當的參數調用這些處理程序。
複製一個 Element 將複製所有屬性及其值,包括由 XML 處理器產生的用來表示預設屬性的那些屬性和值,但此方法不複製它包含的任何子節點,除非它是一個深層複製。這包括此 Element 所包含的文本,因為該文本包含在子 Text 節點中。直接複製 Attr(相對於作為 Element 複製操作的一部分進行的複製)將返回指定的屬性(specifiedtrue)。複製一個 Attr 總是要複製其子節點,因為它們表示其值,不管這是否是深層複製。如果相應的 Entity 可用,則複製 EntityReference 將自動建構其子階層樹,不管這是否是深層複製。複製任何其他型別的節點只返回此節點的副本。
注意,複製一個不可變子階層樹會導致可變副本,但 EntityReference 複製的子節點應為只讀的。此外,還要指定未指定的 Attr 節點的複製。並且,複製 DocumentDocumentTypeEntityNotation 節點與實作有關。

參數:
deep - 如果為 true,則在指定節點下遞歸式複製子階層樹;如果為 false,則僅複製節點本身(及其屬性,如果它是 Element)。
返回:
副本節點。

normalize

void normalize()
將此 Node 之下完整的深層子階層樹中所有 Text 節點(包括屬性節點)放入只有結構(如元素、註釋、處理指令、CDATA 節和實體參考)分隔 Text 節點的“常規”形式,也就是說,既沒有相鄰的 Text 節點,也沒有空 Text 節點。這可以用於確保一個文檔的 DOM 視圖相同,好像它是保存和重新載入的一樣,並且在使用依賴特定文檔階層樹結構的操作(如 XPointer [XPointer] 查詢)時此方法非常有用。如果連接到 Node.ownerDocumentDOMConfiguration 物件的參數 "normalize-characters" 為 true,則此方法還將完全標準化 Text 節點的字元。

註:在文檔包含 CDATASections 的情況下,單獨的標準化操作可能不充分,因為 XPointer 不區分 Text 節點和 CDATASection 節點。

從以下版本開始:
DOM Level 3

isSupported

boolean isSupported(String feature,
                    String version)
測試 DOM 實作是否實作特定功能,且該功能是否受此節點支持,如下所述。

參數:
feature - 要測試的功能的名稱。
version - 這是要測試的功能的版本號。
返回:
如果在此節點上支持指定的功能,則返回 true;否則,返回 false
從以下版本開始:
DOM Level 2

getNamespaceURI

String getNamespaceURI()
此節點的名稱空間 URI;如果它未被指定,則返回 null(參見)。
這不是計算的值,計算的值是基於檢查範圍內名稱空間宣告的名稱空間查詢的結果。它只是創建時給定的名稱空間 URI。
對於除 ELEMENT_NODEATTRIBUTE_NODE 之外的任何型別的節點以及使用 DOM Level 1 方法創建的節點,如 Document.createElement(),這始終為 null

註:根據 Namespaces in XML 規範 [XML Namespaces],屬性不從它連接到的元素繼承其名稱空間。如果未顯式給定一個屬性名稱空間,則它只是沒有名稱空間。

從以下版本開始:
DOM Level 2

getPrefix

String getPrefix()
此節點的名稱空間前綴;如果它未被指定,則為 null。當將它定義為 null 時,設置它無效,包括節點為只讀的情況。
注意,在允許時設置此屬性將更改 nodeName 屬性,它將在可用時保存限定名稱,以及 ElementAttr 介面的 tagNamename 屬性。
將前綴設置為 null 會使它不被指定,將它設置為空字元串與實作有關。
還要注意,更改已知具有預設值的屬性的前綴不會使具有預設值和初始前綴的新屬性出現,因為 namespaceURIlocalName 沒有發生變化。
對於除 ELEMENT_NODEATTRIBUTE_NODE 之外的任何型別的節點以及使用 DOM Level 1 方法創建的節點,如 Document 介面中的 createElement,這始終為 null

從以下版本開始:
DOM Level 2

setPrefix

void setPrefix(String prefix)
               throws DOMException
此節點的名稱空間前綴;如果未指定,則為 null。當將它定義為 null 時,設置它無效,包括節點為只讀的情況。
注意,在允許時設置此屬性將更改 nodeName 屬性,它將在可用時保存限定名稱,以及 ElementAttr 介面的 tagNamename 屬性。
將前綴設置為 null 會使它不被指定,將它設置為空字元串與實作有關。
還要注意,更改已知具有預設值的屬性的前綴不會使具有預設值和初始前綴的新屬性出現,因為 namespaceURIlocalName 不發生變化。
對於除 ELEMENT_NODEATTRIBUTE_NODE 之外的任何型別的節點以及使用 DOM Level 1 方法創建的節點,如 Document 介面中的 createElement,這始終為 null

拋出:
DOMException - INVALID_CHARACTER_ERR: 根據在 Document.xmlVersion 屬性中指定的正在使用的 XML 版本,如果指定的前綴包含非法字元,則引發此異常。
NO_MODIFICATION_ALLOWED_ERR: 如果此節點為只讀,則引發此異常。
NAMESPACE_ERR:在以下情況下引發此異常:如果按照 XML 規範中的名稱空間,指定的 prefix 格式錯誤;如果此節點的 namespaceURInull;如果指定的前綴為 "xml" 且此節點的 namespaceURI 不同於 "http://www.w3.org/XML/1998/namespace";如果此節點為屬性,指定前綴為 "xmlns" 且此節點的 namespaceURI 不同於 "http://www.w3.org/2000/xmlns/";或者如果此節點為屬性且此節點的 qualifiedName 為 "xmlns" [XML Namespaces]。
從以下版本開始:
DOM Level 2

getLocalName

String getLocalName()
返回此節點限定名稱的本地部分。
對於除 ELEMENT_NODEATTRIBUTE_NODE 之外的任何型別的節點以及使用 DOM Level 1 方法創建的節點,如 Document.createElement(),這始終為 null

從以下版本開始:
DOM Level 2

hasAttributes

boolean hasAttributes()
返回此節點(如果它是一個元素)是否具有任何屬性。

返回:
如果此節點具有任何屬性,則返回 true;否則返回 false
從以下版本開始:
DOM Level 2

getBaseURI

String getBaseURI()
此節點的絕對基 URI;如果實作不能獲得絕對 URI,則為 null。此值如描述的那樣計算。但是,當 Document 支持功能 "HTML" [DOM Level 2 HTML] 時,首先使用 HTML BASE 元素(如果有)的 href 屬性的值計算基 URI;否則,使用 Document 介面中的 documentURI 屬性的值計算。

從以下版本開始:
DOM Level 3

compareDocumentPosition

short compareDocumentPosition(Node other)
                              throws DOMException
就節點在文檔中的位置並按照文檔的順序,比較參考節點(即在其上調用此方法的節點)與作為參數傳遞的節點。

參數:
other - 與參考節點比較的節點。
返回:
返回相對於參考節點如何定位節點。
拋出:
DOMException - NOT_SUPPORTED_ERR: 當被比較的節點來自不同的 DOM 實作,未調整該 DOM 實作以返回一致的特定於實作的結果時。
從以下版本開始:
DOM Level 3

getTextContent

String getTextContent()
                      throws DOMException
此屬性返回此節點及其後代的文本內容。將它定義為 null 時,設置它無效。設置後,移除此節點可能有的任何可能的子節點,並且如果新字元串不為空或 null,則用包含此屬性設置的字元串的單個 Text 節點替換。
獲取後,不執行序列化,且返回的字元串不包含任何標記。不執行空白規範化且在元素內容中返回的字元串不包含空白(參見屬性 Text.isElementContentWhitespace)。類似地,設置後,也不執行解析,且以純文本內容形式採用輸入字元串。
根據下面定義的節點型別,返回的字元串由此節點的文本內容產生:
節點型別 內容
ELEMENT_NODE, ATTRIBUTE_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, DOCUMENT_FRAGMENT_NODE 串接每個子節點的 textContent 屬性值,不包括 COMMENT_NODE 和 PROCESSING_INSTRUCTION_NODE 節點。如果該節點沒有子節點,則這是空字元串。
TEXT_NODE, CDATA_SECTION_NODE, COMMENT_NODE, PROCESSING_INSTRUCTION_NODE nodeValue
DOCUMENT_NODE, DOCUMENT_TYPE_NODE, NOTATION_NODE null

拋出:
DOMException - DOMSTRING_SIZE_ERR:在它返回的字元多於實作平臺上 DOMString 變數中適合的字元時引發此異常。
從以下版本開始:
DOM Level 3

setTextContent

void setTextContent(String textContent)
                    throws DOMException
此屬性返回此節點及其後代的文本內容。將它定義為 null 時,設置它無效。設置後,移除此節點可能有的任何可能的子節點,並且,如果新字元串不為空或 null,則用包含此屬性設置的字元串的單個 Text 節點替換。
獲取後,不執行序列化,且返回的字元串不包含任何標記。不執行空白規範化,且返回的字元串在元素內容中不包含空白(參見屬性 Text.isElementContentWhitespace)。類似地,設置後,也不執行解析,且以純文本內容形式採用輸入字元串。
根據下面定義的節點型別,返回的字元串由此節點的文本內容產生:
節點型別 內容
ELEMENT_NODE, ATTRIBUTE_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, DOCUMENT_FRAGMENT_NODE 串接每個子節點的 textContent 屬性值,不包括 COMMENT_NODE 和 PROCESSING_INSTRUCTION_NODE 節點。如果該節點沒有子節點,則這是空字元串。
TEXT_NODE, CDATA_SECTION_NODE, COMMENT_NODE, PROCESSING_INSTRUCTION_NODE nodeValue
DOCUMENT_NODE, DOCUMENT_TYPE_NODE, NOTATION_NODE null

拋出:
DOMException - NO_MODIFICATION_ALLOWED_ERR: 節點為只讀的時引發此異常。
從以下版本開始:
DOM Level 3

isSameNode

boolean isSameNode(Node other)
返回此節點是否是與給定節點相同的節點。
此方法提供一種方法來確定由實作返回的兩個 Node 參考是否參考同一個物件。當兩個 Node 參考參考同一個物件時,即使是通過代理,也可能完全可交換地使用這些參考,例如所有屬性都有相同的值且在任何參考上調用同一個 DOM 方法總是起完全相同的作用。

參數:
other - 要測試的節點。
返回:
如果節點相同,則返回 true;否則,返回 false
從以下版本開始:
DOM Level 3

lookupPrefix

String lookupPrefix(String namespaceURI)
從此節點開始,尋找與給定名稱空間 URI 相關的前綴。此方法忽略預設名稱空間宣告。
參見此方法使用的演算法的詳細資訊。

參數:
namespaceURI - 要尋找的名稱空間 URI。
返回:
如果已找到,則返回相關的名稱空間前綴;如果未找到任何前綴,則返回 null。如果一個以上的前綴與名稱空間前綴相關,則返回的名稱空間前綴與實作有關。
從以下版本開始:
DOM Level 3

isDefaultNamespace

boolean isDefaultNamespace(String namespaceURI)
此方法檢查指定的 namespaceURI 是否是預設名稱空間。

參數:
namespaceURI - 要尋找的名稱空間 URI。
返回:
如果指定的 namespaceURI 為預設名稱空間,則返回 true;否則,返回 false
從以下版本開始:
DOM Level 3

lookupNamespaceURI

String lookupNamespaceURI(String prefix)
從此節點開始,尋找與給定前綴相關的名稱空間 URI。
有關此方法使用的演算法的詳細資訊,請參見。

參數:
prefix - 要尋找的前綴。如果此參數為 null,則此方法將返回預設的名稱空間 URI(如果有)。
返回:
返回相關的名稱空間 URI;如果未找到,則返回 null
從以下版本開始:
DOM Level 3

isEqualNode

boolean isEqualNode(Node arg)
測試兩個節點是否相等。
此方法測試節點的相等性,不是測試是否相同(即兩個節點是否為對同一物件的參考),相同性可以使用 Node.isSameNode() 測試。所有相同的節點也將相等,儘管反之則不然。
當且僅當滿足以下條件時,兩個節點才相等:
兩個 DocumentType 節點要是相等,還必須滿足以下條件:
另一方面,以下內容不影響相等性:ownerDocumentbaseURIparentNode 屬性;Attr 節點的 specified 屬性;AttrElement 節點的 schemaTypeInfo 屬性;Text 節點的 Text.isElementContentWhitespace 屬性;以及在節點上註冊的任何使用者資料和事件偵聽器。

註:通常,在相等性檢查的考慮中,上面描述中未提到的任何情況都是無關緊要的。注意,此規範的未來版本可能考慮更多屬性,並且期望遵守此規範的實作進行相應的更新。

參數:
arg - 與其比較相等性的節點。
返回:
如果節點相等,則返回 true;否則,返回 false
從以下版本開始:
DOM Level 3

getFeature

Object getFeature(String feature,
                  String version)
此方法返回一個特定的物件,該物件實作指定功能或版本的特定 API,如下所述。該特殊對象也可以通過使用特定於綁定的強制轉換方法獲得,但不是必須期望這樣,如文中討論的那樣。此方法還允許實作提供不支持 Node 介面的特殊物件。

參數:
feature - 所請求的功能的名稱。注意,追加到功能名稱的任何加號 "+" 將被忽略,因為它在此方法的上下文中無關緊要。
version - 這是要測試的功能版本號。
返回:
返回實作指定功能和版本的特定 API 的物件(如果有);如果不存在實作與該功能相關的介面的物件,則返回 null。如果此方法返回的 DOMObject 實作 Node 介面,則它必須委託給主要核心 Node 且不返回與主要核心 Node 不一致的結果,如屬性、子節點,等等。
從以下版本開始:
DOM Level 3

setUserData

Object setUserData(String key,
                   Object data,
                   UserDataHandler handler)
將對象與此節點上的鍵相關聯。該物件以後可以通過使用相同鍵的調用 getUserData 從此節點檢索到。

參數:
key - 將該物件與其關聯的鍵。
data - 與給定鍵相關聯的物件;為 null 時表示移除與任何現有的與該鍵的關聯。
handler - 與該鍵關聯的處理程序,或 null
返回:
返回以前與此節點上的給定鍵關聯的 DOMUserData;如果沒有,則返回 null
從以下版本開始:
DOM Level 3

getUserData

Object getUserData(String key)
檢索與此節點上的某個鍵相關聯的物件。必須首先通過使用相同鍵的調用 setUserData 將該物件設置到此節點。

參數:
key - 該物件所關聯的鍵。
返回:
返回與此節點上的給定鍵關聯的 DOMUserData;如果沒有,則返回 null
從以下版本開始:
DOM Level 3

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only