Range.surroundContents()

La méthode Range.surroundContents() déplace le contenu du Range dans un nouveau nœud, plaçant le nouveau nœud au début du range spécifié.

Cette méthode est à peu près équivalente à :

js
newNode.appendChild(range.extractContents());
range.insertNode(newNode);

Après déplacement, les bornes du range incluent newNode.

Cependant, une exception sera levée si le Range découpe un nœud non-Text sur une seule de ses bornes. C'est-à-dire que, contrairement à l'alternative ci-dessus, s'il y a des nœuds partiellement sélectionnés, ils ne seront pas clonés ; à la place, l'opération échouera.

Syntaxe

js
range.surroundContents(newNode);

Paramètres

newNode

Un Node à insérer à l'emplacement du range.

Exemple

js
var range = document.createRange();
var newNode = document.createElement("p");

range.selectNode(document.getElementsByTagName("div").item(0));
range.surroundContents(newNode);

Spécifications

Specification
DOM Standard
# dom-range-surroundcontents

Compatibilité des navigateurs

BCD tables only load in the browser

Voir aussi