aboutsummaryrefslogtreecommitdiff
path: root/files/fr/web/api/range/surroundcontents/index.md
blob: e157cd42f23c28a89a4e99eb0b33e6270ced69c2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
---
title: Range.surroundContents()
slug: Web/API/Range/surroundContents
translation_of: Web/API/Range/surroundContents
---
{{ApiRef("DOM")}}

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 à :

```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 {{ 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.

## Syntaxe

    range.surroundContents(newNode);

### Paramètres

- _newNode_
  - : Un {{ domxref("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

| 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. |

## Compatibilité des navigateurs

{{Compat("api.Range.surroundContents")}}

## Voir aussi

- [L’index des interfaces DOM](/fr/docs/DOM/DOM_Reference)