Imaginez que j'ai le code HTML suivant:
<div><span><b>This is in bold</b></span></div>
Je veux obtenir le HTML pour le div, y compris le div lui-même. Element.innerHTML renvoie uniquement:
<span>...</span>
Des idées? Merci
javascript
html
dom
Richard H
la source
la source
Utilisez
outerHTML
:la source
outerHTML
est pris en charge depuis FF11: developer.mozilla.org/en-US/docs/Web/API/element.outerHTML .Tout d'abord, mettez l'élément qui encapsule l'élément
div
en question, mettez unid
attribut sur l'élément et utilisez-getElementById
le ensuite: une fois que vous avez l'élément, faites simplement 'e.innerHTML` pour récupérer le HTML.<div><span><b>This is in bold</b></span></div>
=>
<div id="wrap"><div><span><b>This is in bold</b></span></div></div>
puis:
Notez que ce
outerHTML
n'est pas compatible avec plusieurs navigateurs.la source
div
à la soupe :)document
... alors où est-il, vous souciez-vous de nous éclairer tous?Si vous voulez une empreinte plus légère, mais un script plus, obtenir les éléments innerHTML et seulement créer et cloner le vide parent-
la source
la source
comme externalHTML est IE uniquement, utilisez cette fonction:
crée un élément vide bidon du type parent et utilise innerHTML dessus, puis rattache l'élément dans le dom normal
la source
Vous voudrez quelque chose comme ça pour que ce soit un navigateur croisé.
la source
element
du document une fois appelé, non?vieille question mais pour les nouveaux arrivants:
document.querySelector('div').outerHTML
la source
définir la fonction externalHTML en fonction du support de element.outerHTML:
la source
la source