Text : propriété wholeText
Baseline
Widely available
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
La propriété en lecture seule wholeText de l'interface Text retourne le texte complet de tous les nœuds Text logiquement adjacents au nœud. Le texte est concaténé dans l'ordre du document. Cela permet de définir n'importe quel nœud de texte et d'obtenir tout le texte adjacent sous forme d'une seule chaîne de caractères.
Note :
Cela revient à appeler Node.normalize() puis à lire la valeur du texte, mais sans modifier l'arbre.
Valeur
Une chaîne de caractères contenant le texte concaténé.
Exemple
Supposons que vous ayez le paragraphe suivant dans votre page web :
<p>
La grande randonnée, c'est génial !
<strong>Pas de réseaux sociaux insipides !</strong> Cependant,
<a href="https://fr.wikipedia.org/wiki/Escalade">faire de l'escalade</a>
est compliqué.
</p>
Vous décidez que vous n'aimez pas la phrase du milieu, donc vous la supprimez :
const paragraph = document.querySelector("p"); // Lit le paragraphe
paragraph.removeChild(paragraph.childNodes[1]); // Supprime l'élément strong
Vous obtenez alors : « La grande randonnée, c'est génial ! Cependant, faire de l'escalade est compliqué. », avec deux nœuds avant le lien hypertexte :
- Un objet
Textcontenant la chaîne de caractères « La grande randonnée, c'est génial ! » - Un second nœud
Textcontenant la chaîne de caractères « Cependant, »
Pour obtenir ces deux nœuds en une seule fois, vous pouvez appeler paragraph.childNodes[0].wholeText :
console.log(`'${paragraph.childNodes[0].wholeText}'`); // 'La grande randonnée, c'est génial ! Cependant, '
Spécifications
| Specification |
|---|
| DOM> # ref-for-dom-text-wholetext①> |
Compatibilité des navigateurs
Voir aussi
- L'interface
Textà laquelle elle appartient.