|
|
@@ -0,0 +1,26 @@
|
|
|
+Après avoir vu comment **ajouter** du contenu à la page, voyons comment **modifier**
|
|
|
+du contenu existant.
|
|
|
+
|
|
|
+```html
|
|
|
+<p id="polemique">Star Wars VIII est le <strong>meilleur Star Wars</strong> !</p>
|
|
|
+<script>
|
|
|
+var paragraphe = document.getElementById('polemique');
|
|
|
+paragraphe.innerHTML = 'Star Wars VIII... Mouais, <em>bof bof</em> !';
|
|
|
+</script>
|
|
|
+```
|
|
|
+
|
|
|
+<blockquote>
|
|
|
+Chaque <em>élément</em> du document a une propriété <code>innerHTML</code>,
|
|
|
+qui renferme son contenu HTML.
|
|
|
+</blockquote>
|
|
|
+
|
|
|
+Première remarque, cette propriété ne concerne donc pas les noeuds texte.
|
|
|
+
|
|
|
+Deuxième remarque, comme son nom semble l'indiquer, on peut mettre un mélange de texte et de balises dans cette propriété. Cela a des implications <em>très</em> intéressantes,
|
|
|
+concernant la création de contenu HTML.
|
|
|
+
|
|
|
+Imagine la tâche que représenterait la création d'une interface complexe, de façon dynamique,
|
|
|
+en utilisant uniquement des `createElement()`, `createTextNode()` et `appendChild()`...
|
|
|
+Même en améliorant la fonction de création de contenu de l'exercice, on ne serait pas sorti de l'auberge !
|
|
|
+
|
|
|
+C'est probablement une meilleure idée d'assigner directement une chaîne de contenu HTML à `innerHTML`, comme on va le faire à l'étape suivante.
|