La méthode Text.splitText() sépare le nœud Text en deux nœuds au niveau de l’indice spécifié, et conserve les deux nœuds dans l’arbre en tant que voisins.

Après la séparation, le nœud actuel contient tout le texte jusqu’à l’indice spécifié, et un nœud nouvellement créé du même type contient le texte restant. Le nœud nouvellement créé est retourné à l’appelant. Si le nœud original avait un parent, le nouveau nœud est inséré en tant que voisin suivant du nœud original. Si l’indice est égal à la longueur du nœud original, le nœud nouvellement créé ne contient pas de données.

Des nœuds texte séparés peuvent être concaténés en utilisant la méthode Node.normalize().

Une DOMException avec la valeur INDEX_SIZE_ERR est levée si l’indice spécifié est négatif ou est supérieur au nombre d’unités 16-bit dans le texte du nœud ; une DOMException avec la valeur NO_MODIFICATION_ALLOWED_ERR est levée si le nœud est en lecture seule.

Syntaxe

noeudRemplacant = noeudTexte.splitText(indice)

Exemple

Dans cet exemple, le nœud texte d’un <p> est séparé en deux nœuds texte et un <span> est inséré entre les deux.

<body>
  <p id="p">foobar</p>

  <script type="text/javascript">
    var p = document.getElementById('p');
    var noeudTexte = p.firstChild;

    // coupe entre foo et bar
    var noeudRemplacant = noeudTexte.splitText(3);

    // crée un span avec ' contenu du span '
    var span = document.createElement('span');
    span.appendChild(document.createTextNode(' contenu du span '));

    // ajoute le span avant 'bar'
    p.insertBefore(span, noeudRemplacant);

    // le résultat est <p id="p">foo<span> contenu du span </span>bar</p>
  </script>
</body>

Spécifications

Spécification Statut Commentaires
DOM
La définition de 'Text.splitText' dans cette spécification.
Standard évolutif Pas de changement depuis Document Object Model (DOM) Level 3 Core Specification.
Document Object Model (DOM) Level 3 Core Specification
La définition de 'Text.splitText' dans cette spécification.
Obsolete Pas de changement depuis Document Object Model (DOM) Level 2 Core Specification.
Document Object Model (DOM) Level 2 Core Specification
La définition de 'Text.splitText' dans cette spécification.
Obsolete Pas de changement depuis Document Object Model (DOM) Level 1 Specification.
Document Object Model (DOM) Level 1 Specification
La définition de 'Text.splitText' dans cette spécification.
Obsolete Définition initiale.

Compatibilité des navigateurs

Nous convertissons les données de compatibilité dans un format JSON. Ce tableau de compatibilité utilise encore l'ancien format car nous n'avons pas encore converti les données qu'il contient. Vous pouvez nous aider en contribuant !

Fonctionnalité Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari
Support de base 1.0 [1] (Oui) 1.0 (1.7 ou moins) (Oui) (Oui) [1] (Oui) [2]
Fonctionnalité Android Edge Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Support de base (Oui) [1] (Oui) 1.0 (1.0) (Oui) (Oui) [1] (Oui) [2]

[1] Avant Chrome 30 et Opera 17, l’argument de splitText() n’était pas obligatoire, tel que requis par la spécification et implementé par IE et les navigateurs basés sur Gecko.

[2] L’argument n’est pas obligatoire, bien que requis par la spec.

Voir aussi

  • L’interface Text à laquelle cette méthode appartient.
  • La méthode opposée : Node.normalize.

Étiquettes et contributeurs liés au document

 Contributeurs à cette page : Watilin
 Dernière mise à jour par : Watilin,