в чем разница между элементом html и фрагментом? - PullRequest
2 голосов
/ 14 апреля 2011

обнаружили, что фрагменты очень полезны при создании динамического html - например, использование пакета html-элементов и самого пакета, распадающегося при установке на место, - очень приятно.

Я принял методы для html-элементов ифрагменты были одинаковыми, но я думаю это неверно.

кажется, что фрагменты имеют методы узла - appendChild() и т. д. - но не имеют более сложных методов элемента HTML, например,getElementsByTagName().

Является ли эта оценка правильной?или я стреляю себе в ногу по-новому?

Ответы [ 2 ]

6 голосов
/ 14 апреля 2011

A DocumentFragment расширяет интерфейс Node и определяется как

interface DocumentFragment : Node {
};

HTMLElement простирается от Element, а его интерфейс определяется как

interface HTMLElement : Element {
    attribute DOMString id;
    attribute DOMString title;
    attribute DOMString lang;
    attribute DOMString dir;
    attribute DOMString className;
};

Element в свою очередь расширяет интерфейс Node. Он содержит метод getElementsByTagName среди нескольких других,

interface Element : Node {
    ...
    NodeList getElementsByTagName(in DOMString name);
    ..
};

Итак, чтобы ответить на ваш вопрос вкратце, фрагмент документа и элемент html совместно используют интерфейс узла .

1 голос
/ 14 апреля 2011

Интерфейс DocumentFragment расширяет интерфейс Node , обеспечивая таким образом методы для вставки и клонирования элементов, но не getElementsByTagName() и т.п.Их можно найти в интерфейсе Document (который также расширяет Node).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...