Mi piacerebbe essere in grado di identificare se un dato nodo DOM è stato aggiunto/inserito in un altro nodo ancora, o se è appena uscito da document.createElement() o simile e non è stato inserito da nessuna parte.Javascript: come stabilire se un oggetto nodo è stato inserito in un documento/in un altro elemento ancora
Nella maggior parte dei browser è sufficiente controllare il genitoreNodo.
if (!node.parentNode) {
// this node is not part of a larger document
}
Tuttavia, in Internet Explorer sembra che nuovi elementi, anche subito dopo che sono stati creati con document.createElement() hanno già un oggetto parentNode (di tipo DispHTMLDocument ??).
Qualsiasi altro browser cross-friendly e affidabile?
Modifica: sembra che Internet Explorer stia implicitamente creando un DocumentFragment (con nodeType di 11) e impostandolo come proprietà parentNode del nodo.
Ho modificato la domanda un po 'perché non era ben espressa. Mi dispiace per nickf che ha fornito un'ottima risposta ma eccessivo per quello che volevo davvero! – thomasrutter