--- title: Range.surroundContents() slug: Web/API/Range/surroundContents translation_of: Web/API/Range/surroundContents ---
La méthode Range.surroundContents()
déplace le contenu du {{ domxref("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 à :
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 {{ domxref("Range") }} découpe un nœud non-{{ domxref("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.
range.surroundContents(newNode);
range
.var range = document.createRange(); var newNode = document.createElement("p"); range.selectNode(document.getElementsByTagName("div").item(0)); range.surroundContents(newNode);
Spécification | Statut | Commentaire |
---|---|---|
{{SpecName('DOM WHATWG', '#dom-range-surroundcontents', 'Range.surroundContents()')}} | {{Spec2('DOM WHATWG')}} | Pas de changement. |
{{SpecName('DOM2 Traversal_Range', 'ranges.html#Level2-Range-method-surroundContents', 'Range.surroundContents()')}} | {{Spec2('DOM2 Traversal_Range')}} | Spécification initiale. |
{{Compat("api.Range.surroundContents")}}