Я хотел бы определить, был ли добавлен/вставлен данный DOM node в другой node или он был свежим из document.createElement() или аналогичным и не был помещен в любом месте.
В большинстве браузеров работает только проверка parentNode.
if (!node.parentNode) {
// this node is not part of a larger document
}
Однако в Internet Explorer кажется, что новые элементы, даже сразу после того, как они были созданы с document.createElement(), уже имеют объект parentNode (типа DispHTMLDocument?).
Любой другой хороший кросс-браузер и надежный способ?
Изменить: похоже, что Internet Explorer неявно создает DocumentFragment (с nodeType из 11) и устанавливает это как свойство node parentNode.