2010-03-20 3 views
11

Wie verwendet man OuterHTML in JavaScript? DankeWie verwendet man OuterHTML in JavaScript?

+1

Sie können dies überprüfen: http://stackoverflow.com/questions/2474605/how-to-convert-a-htmlelement-to-a-string –

+0

Mögliche Duplikat von [Wie konvertiert man ein HTMLElement in eine Zeichenfolge ] (https://stackoverflow.com/questions/2474605/how-to-convert-a-htmlelement-to-a-string) – Graham

Antwort

10

Das OuterHTML ist das HTML eines Elements, das das Element selbst enthält. Vergleichen Sie dies mit der innerHTML des Elements, bei der es sich um den HTML-Code handelt, der in den öffnenden und schließenden Tags eines Elements enthalten ist. Per Definition haben Elemente ohne öffnende und schließende Tags kein innerHTML.

Verwenden Sie die OuterHTML, wenn Sie ein Element und seinen Inhalt vollständig ersetzen möchten. Verwenden Sie innerHTML, wenn Sie nur den Inhalt des Elements ersetzen möchten.

7

outerHTML ist eine nicht standardmäßige Internet Explorer-Eigenschaft eines Elements. Es gibt den HTML-Code des Elements und seiner untergeordneten Elemente zurück. In bestimmten Fällen kann ein Element durch einen HTML-String ersetzt werden.

+6

Ein Jahr später, und Chrome und Safari scheinen diese Funktion ebenfalls implementiert zu haben. Zum Zeitpunkt der Erstellung dieses Dokuments wird Firefox jedoch nicht unterstützt. –

+10

Unterstützung für [outerHTML] (https://developer.mozilla.org/en/DOM/element.outerHTML) wurde in [Firefox 11] (https://developer.mozilla.org/en/Firefox_11_for_developers) hinzugefügt. –

11
function getHTML(node){ 
    if(!node || !node.tagName) return ''; 
    if(node.outerHTML) return node.outerHTML; 

    // polyfill: 
    var wrapper = document.createElement('div'); 
    wrapper.appendChild(node.cloneNode(true)); 
    return wrapper.innerHTML; 
} 
+0

Interessante Idee. Da jedoch die meisten Browser, die outerHTML nicht unterstützen, das Prototyping auf HTMLElement unterstützen, frage ich mich, ob es einfacher wäre, es pseudo-nativ zu implementieren. – scunliffe

Verwandte Themen