Come usare outerHTML in JavaScript? GrazieCome usare outerHTML in JavaScript?
risposta
L'hHML esterno è l'HTML di un elemento che include l'elemento stesso. Confrontalo con innerHTML dell'elemento, che è l'HTML contenuto all'interno di un elemento che apre e chiude i tag. Per definizione, gli elementi senza i tag di apertura e di chiusura non hanno innerHTML.
Utilizzare il outerHTML quando si desidera sostituire completamente un elemento e il suo contenuto. Usa innerHTML quando vuoi solo sostituire il contenuto dell'elemento.
outerHTML
è una proprietà di Internet Explorer non standard di un elemento. Restituisce l'html dell'elemento e i suoi elementi figli. In alcuni casi può essere impostato per sostituire completamente un elemento con una stringa html.
Un anno e Chrome e Safari sembrano aver implementato questa funzione. Tuttavia, al momento di scrivere questo, Firefox non lo supporta. –
Il supporto per [outerHTML] (https://developer.mozilla.org/en/DOM/element.outerHTML) è stato aggiunto in [Firefox 11] (https://developer.mozilla.org/en/Firefox_11_for_developers). –
Forse guardate jQuery e le sue funzioni prepend() e append().
http://api.jquery.com/prepend/
dovrebbe funzionare in tutti i browser.
Inoltre, questo plugin:
http://yelotofu.com/2008/08/jquery-outerhtml/
che dovrebbe coprire il recupero e impostazione.
si arriva contenuti all'interno di un elemento.
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;
}
Idea interessante. Tuttavia dal momento che la maggior parte dei browser che non supportano outerHTML supportano la prototipazione su HTMLElement mi chiedo se sarebbe più semplice implementarla pseudo-nativamente? – scunliffe
La maggior parte dei browser più diffusi supporta outerHTML. Firefox è un'eccezione. Per ulteriori informazioni su supporto browser esterno HTML visita http://www.quirksmode.org/dom/w3c_html.html.
Se è possibile aggiungere jQuery alla pagina, si consiglia di includere il plug-in jQuery outerHTML.
Si consiglia di controllare questo: http://stackoverflow.com/questions/2474605/how-to-convert-a-htmlelement-to-a-string –
Possibile duplicato di [Come convertire un HTMLElement in una stringa ] (https://stackoverflow.com/questions/2474605/how-to-convert-a-htmlelement-to-a-string) – Graham