diff options
author | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 14:40:17 -0500 |
---|---|---|
committer | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 14:40:17 -0500 |
commit | 33058f2b292b3a581333bdfb21b8f671898c5060 (patch) | |
tree | 51c3e392513ec574331b2d3f85c394445ea803c6 /files/fr/web/api/element/outerhtml/index.html | |
parent | 8b66d724f7caf0157093fb09cfec8fbd0c6ad50a (diff) | |
download | translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.tar.gz translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.tar.bz2 translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.zip |
initial commit
Diffstat (limited to 'files/fr/web/api/element/outerhtml/index.html')
-rw-r--r-- | files/fr/web/api/element/outerhtml/index.html | 157 |
1 files changed, 157 insertions, 0 deletions
diff --git a/files/fr/web/api/element/outerhtml/index.html b/files/fr/web/api/element/outerhtml/index.html new file mode 100644 index 0000000000..3c9b834604 --- /dev/null +++ b/files/fr/web/api/element/outerhtml/index.html @@ -0,0 +1,157 @@ +--- +title: Element.outerHTML +slug: Web/API/Element/outerHTML +tags: + - API + - DOM + - Privacy + - Propriétés +translation_of: Web/API/Element/outerHTML +--- +<div>{{APIRef("DOM")}}</div> + +<p>L'attribut <code>outerHTML</code> de l'interface DOM {{domxref("element")}} récupère le fragment HTML sérialisé décrivant l'élément ainsi que ses descendants. Il peut aussi être utilisé pour remplacer l'élément avec les noeuds générés de la chaîne fournie.</p> + +<p>Pour obtenir uniquement la représentation HTML du contenu d'un élément ou pour remplacer le contenu d'un élément, utilisez plutôt la propriété {{domxref ("Element.innerHTML", "innerHTML")}}.</p> + +<h2 id="Syntax" name="Syntax">Syntaxe</h2> + +<pre class="eval line-numbers language-html"><code class="language-html">var content = element.outerHTML; + +element.outerHTML = htmlString;</code></pre> + +<h3 class="highlight-spanned" id="Valeur"><span class="highlight-span">Valeur</span></h3> + +<p>La lecture de la valeur de <code>outerHTML</code> renvoie une {{domxref("DOMString")}} contenant la sérialisation HTML des descendants de l'élément. Définir la valeur de <code>innerHTML</code> supprime tous les descendants et les remplace par les noeuds construits en analysant le HTML donné dans la chaîne <code>htmlString</code>.</p> + +<h3 class="highlight-spanned" id="Exceptions"><span class="highlight-span">Exceptions</span></h3> + +<dl> + <dt><code>SyntaxError</code></dt> + <dd>Une tentative a été faite de définir la valeur de <code>outerHTML</code> en utilisant une chaîne qui n'est pas correctement formée HTML.</dd> + <dt><code>NoModificationAllowedError</code></dt> + <dd>Une tentative a été faite de définir <code>outerHTML</code> sur un élément qui est enfant direct du {{domxref("Document")}}, tel que {{domxref("Document.documentElement")}}.</dd> +</dl> + +<h2 id="Examples" name="Examples">Exemples</h2> + +<p>Récupérer la valeur de la propriété <code>outerHTML</code> d'un élément :</p> + +<pre class="brush: js">// HTML: +// <div id="d"><p>Contenu</p><p>Plus Complexe</p></div> + +d = document.getElementById("d"); +dump(d.outerHTML); + +// la chaîne '<div id="d"><p>Contenu</p><p>Plus Complexe</p></div>' +// est affichée dans la fenêtre console +</pre> + +<p>Remplacer un noeud en modifiant la propriété <code>outerHTML</code> :</p> + +<pre class="brush: js">// HTML: +// <div id="container"><div id="d">Ceci est un div.</div></div> + +container = document.getElementById("container"); +d = document.getElementById("d"); +console.log(container.firstChild.nodeName); // affiche "DIV" + +d.outerHTML = "<p>Ce paragraphe remplace le div original.</p>"; +console.log(container.firstChild.nodeName); // affiche "P" + +// Le div #d ne fait plus partie de l'arbre décrivant le document, +// le nouveau paragraphe l'ayant remplacé. +</pre> + +<h2 id="Notes">Notes</h2> + +<p>Si un élément n'a pas de noeud parent, définir sa propriété <code>outerHTML</code> ne le modifiera pas, ni ses descendants. De nombreux navigateurs déclencheront aussi une exception. Par exemple :</p> + +<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="keyword token">var</span> div <span class="operator token">=</span> document<span class="punctuation token">.</span><span class="function token">createElement</span><span class="punctuation token">(</span><span class="string token">"div"</span><span class="punctuation token">)</span><span class="punctuation token">;</span> +div<span class="punctuation token">.</span>outerHTML <span class="operator token">=</span> <span class="string token">"<div class=\"test\">test</div>"</span><span class="punctuation token">;</span> +console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span>div<span class="punctuation token">.</span>outerHTML<span class="punctuation token">)</span><span class="punctuation token">;</span> <span class="comment token">// output: "<div></div>"</span></code></pre> + +<p>Aussi, lorsqu'un élément va être remplacé dans le document, la variable dont la propriété <code>outerHTML</code> a été modifiée contiendra toujours une référence à l'élément initial :</p> + +<pre class="brush: js">var p = document.getElementsByTagName("p")[0]; +console.log(p.nodeName); // affiche: "P" +p.outerHTML = "<div>Ce div remplace un paragraph.</div>"; +console.log(p.nodeName); // toujours "P"; +</pre> + +<h2 id="Specification" name="Specification">Spécification</h2> + +<table class="standard-table"> + <thead> + <tr> + <th scope="col">Spécification</th> + <th scope="col">Statut</th> + <th scope="col">Commentaire</th> + </tr> + </thead> + <tbody> + <tr> + <td>{{SpecName('DOM Parsing', '#outerhtml', 'Element.outerHTML')}}</td> + <td>{{ Spec2('DOM Parsing') }}</td> + <td></td> + </tr> + </tbody> +</table> + +<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</h2> + +<p>{{ CompatibilityTable() }}</p> + +<div id="compat-desktop"> +<table class="compat-table"> + <tbody> + <tr> + <th>Fonctionnalité</th> + <th>Firefox (Gecko)</th> + <th>Chrome</th> + <th>Internet Explorer</th> + <th>Opera</th> + <th>Safari</th> + </tr> + <tr> + <td>Basic support</td> + <td>{{ CompatGeckoDesktop("11") }}</td> + <td>0.2</td> + <td>4.0</td> + <td>7</td> + <td>1.3</td> + </tr> + </tbody> +</table> +</div> + +<div id="compat-mobile"> +<table class="compat-table"> + <tbody> + <tr> + <th>Fonctionnalité</th> + <th>Android</th> + <th>Firefox Mobile (Gecko)</th> + <th>IE Mobile</th> + <th>Opera Mobile</th> + <th>Safari Mobile</th> + </tr> + <tr> + <td>Basic support</td> + <td>{{ CompatVersionUnknown() }}</td> + <td>{{ CompatGeckoMobile("11") }}</td> + <td>{{ CompatVersionUnknown() }}</td> + <td>{{ CompatVersionUnknown() }}</td> + <td>{{ CompatVersionUnknown() }}</td> + </tr> + </tbody> +</table> +</div> + +<h2 id="Voir_aussi">Voir aussi</h2> + +<ul> + <li>Sérialisation de l'arborescence DOM en XML ou HTML : {{domxref("XMLSerializer")}}</li> + <li>Analyse XML ou HTML dans l'arborescence DOM : {{domxref("DOMParser")}}</li> + <li>{{domxref("HTMLElement.outerText")}}</li> +</ul> |