在dom中,html元素和片段之间的功能区别是什么?

cc *_*ung 2 html javascript html5 dom

已经发现片段在构建动态html时非常有用 - 就像使用一袋html元素一样,袋子本身在放置时会溶解 - 非常好.

我假设html元素和片段的方法是相同的,但我认为这是不正确的.

似乎片段有节点方法 - appendChild()等等 - 但是没有更复杂的html元素方法,例如,getElementsByTagName().

这个评估是否正确?还是我以一种新的方式在脚下射击?

Anu*_*rag 6

A DocumentFragment扩展Node接口并定义为,

interface DocumentFragment : Node {
};
Run Code Online (Sandbox Code Playgroud)

一个HTMLElement从延伸Element,并且它的界面被定义为,

interface HTMLElement : Element {
    attribute DOMString id;
    attribute DOMString title;
    attribute DOMString lang;
    attribute DOMString dir;
    attribute DOMString className;
};
Run Code Online (Sandbox Code Playgroud)

Element反过来扩展了Node界面.它包含getElementsByTagName其他几个方法,

interface Element : Node {
    ...
    NodeList getElementsByTagName(in DOMString name);
    ..
};
Run Code Online (Sandbox Code Playgroud)

因此,简单地回答您的问题,文档片段和html元素都共享节点接口.