selection
=========

### Résumé

La classe de l'objet retourné par `window.getSelection()`, `document.getSelection()` et d'autres méthodes.

### Description

Un objet `selection` représente les plages sélectionnées par l'utilisateur. Habituellement, il ne contient qu'une seule plage accessible comme ceci :


```js
range = sel.getRangeAt(0);
```


L'appel de la méthode `toString()` renvoie le texte contenu dans la sélection. Cet appel peut être automatique, par exemple lorsque l'objet est passé à la fonction alert() :


```js
selObj = window.getSelection();
window.alert(selObj);
```

### Glossaire

Autres mots clés utilisés dans cette section.

anchor (ancre)

L'« ancre » d'une sélection est son point de départ. Pour une sélection avec la souris, l'« ancre » correspond à l'endroit initialement pressé par le bouton de la souris. Quand l'utilisateur modifie la sélection à la souris ou au clavier, l'« ancre » ne change pas.

focus (focus)

Le « focus » d'une sélection est son point d'arrivée. Pour une sélection avec la souris, le « focus » correspond à l'endroit où le bouton de la souris est relaché. Quand l'utilisateur modifie la sélection à la souris ou au clavier, le « focus » pointe la fin de la sélection modifiée.

range (plage)

Une « plage » est une partie contigüe d'un document. Une « plage » peut contenir aussi bien des nœuds entiers que des portions de nœuds, comme un extrait de nœud texte. Habituellement, un utilisateur n'effectuera qu'une seule sélection à la fois, mais il lui est possible de sélectionner plusieurs « plages » (par ex. en utilisant la touche Ctrl). Une « plage » est obtenue depuis une sélection par l'objet range. Les objets `range` peuvent également être créés via le DOM et ajoutés ou supprimés d'une sélection par programmation.

### Propriétés

anchorNode (en-US)

Renvoie le nœud d'où la sélection commence.

anchorOffset (en-US)

Renvoie un nombre correspondant au décalage de l'« ancre » de la sélection au sein de l'`anchorNode`. Si l'`anchorNode` est un noeud texte, il s'agit du nombre de caractères précédants l'« ancre » au sein de l'`anchorNode`. Si l'`anchorNode` est un élément, il s'agit du nombre de noeuds enfants de l'`anchorNode` précédant l'« ancre ».

focusNode (en-US)

Renvoie le nœud où la sélection se termine.

focusOffset (en-US)

Renvoie un nombre correspondant au décalage du « focus » de la sélection au sein du `focusNode`. Si le `focusNode` est un noeud texte, il s'agit du nombre de caractères précédants le « focus » au sein du `focusNode`. Si le focusNode est un élément, il s'agit du nombre de noeuds enfants du `focusNode` précédant le « focus ».

isCollapsed (en-US)

Renvoie un booléen indiquant si le point de départ et d'arrivée sont à la même position.

rangeCount (en-US)

Renvoie le nombre de « plages » dans la sélection.

### Méthodes

* getRangeAt (en-US)
    + : Renvoie un objet range représentant une des « plages » actuellement sélectionnée.
* collapse
    + : Réduit la sélection courante à un simple point.
* extend (en-US)
    + : Déplace le « focus » de la sélection à un endroit spécifié.
* collapseToStart (en-US)
    + : Déplace le « focus » de la sélection au même point que l'« ancre ».
* collapseToEnd (en-US)
    + : Déplace l'« ancre » de la sélection au même point que le « focus ». Le « focus » ne bouge pas.
* selectAllChildren (en-US)
    + : Ajoute tous les enfants d'un nœud spécifié à la sélection.
* addRange (en-US)
    + : Un objet range devant être ajouté à la sélection.
* removeRange (en-US)
    + : Supprime une « plage » de la sélection.
* removeAllRanges (en-US)
    + : Supprime toutes les « plages » de la sélection.
* deleteFromDocument (en-US)
    + : Efface le contenu de la sélection du document.
* selectionLanguageChange
    + :
* toString
    + : Renvoie une chaîne de caractères représentant l'actuel objet `selection`, i.e. le texte sélectionné.
* containsNode (en-US)
    + : Indique si un nœud donné appartient à la sélection.
Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

### Voir aussi

window.getSelection, `document.getSelection()`,Range

### Liens externes

* Définition IDL dans Mozilla cross-reference