|
Common DOM API | ||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
DocumentFragment
は 、「軽量」または「最低限」の
Document
のオブジェクトです。ドキュメントツリーの一部を抽出したり、
ドキュメントの新しいフラグメントを作成することは、多くのユーザが必要としています。
フラグメントを移動させて、ドキュメントのカットや再構成などを行うユーザコマンドの
実装を想像してみてください。このようなフラグメントを保持できるオブジェクトを持つ
ことが望まれます。また、このような目的でノードを使用することはごく当然のことです。
Document
オブジェクトがこの役割を果たすことが理想的ですが、
一方、基盤となる実装によっては、Document
がかなり重量のある
オブジェクトとなる可能性があります。このニーズに対して実際に必要になるのは、
軽量のオブジェクトです。DocumentFragment
がこのようなオブジェクト
です。
さらに、別の Node
の子としてノードを挿入する場合のような
さまざまな操作は、DocumentFragment
オブジェクトを引数として取る
ことができます。これにより、DocumentFragment
のすべての子ノードが、
このノードの子リストに移動することになります。
DocumentFragment
ノードの子ノードは、ドキュメントの構造を
定義するサブツリーの最高位を表すゼロまたはそれ以上のノードです。
DocumentFragment
ノードは適格性のある XML ドキュメントである
必要はありません (ただし、複数の最高位のノードを保持できるように、適格性のある
XML の構文解析されたエンティティに課せられる規則に従うことが必要)。たとえば、
DocumentFragment
は 1 つの子ノードだけを持ち、その子ノードが
Text
ノードの場合があります。このような構造モデルは、HTML
ドキュメントも適格性のある XML ドキュメントも表しません。
DocumentFragment
が Document
(または、
実際には子ノードを取る別の任意の Node
) に挿入されるときは、
DocumentFragment
の子ノード (DocumentFragment
そのものではなく) が Node
に挿入されます。これは、ユーザが兄弟
となるノードを作成するときに DocumentFragment
を非常に役立つ
ようにします。DocumentFragment
は、これらのノードの親として
機能し insertBefore
や appendChild
などの
Node
インタフェースから、ユーザが標準メソッドとして使用できる
ようにします。
詳細については、「Document Object Model (DOM) Level 2 Core Specification」も参照してください。
フィールドの概要 |
インタフェース org.w3c.dom.Node から継承したフィールド |
ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE |
インタフェース org.w3c.dom.Node から継承したメソッド |
appendChild, cloneNode, getAttributes, getChildNodes, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, hasAttributes, hasChildNodes, insertBefore, isSupported, normalize, removeChild, replaceChild, setNodeValue, setPrefix |
|
Common DOM API | ||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |