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 :

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() : 

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
Renvoie le nœud d'où la sélection commence.
anchorOffset
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
Renvoie le nœud où la sélection se termine.
focusOffset
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
Renvoie un booléen indiquant si le point de départ et d'arrivée sont à la même position.
rangeCount
Renvoie le nombre de « plages » dans la sélection.

Méthodes

getRangeAt
Renvoie un objet range représentant une des « plages » actuellement sélectionnée.
collapse
Réduit la sélection courante à un simple point.
extend
Déplace le « focus » de la sélection à un endroit spécifié.
collapseToStart
Déplace le « focus » de la sélection au même point que l'« ancre ».
collapseToEnd
Déplace l'« ancre » de la sélection au même point que le « focus ». Le « focus » ne bouge pas.
selectAllChildren
Ajoute tous les enfants d'un nœud spécifié à la sélection.
addRange
Un objet range devant être ajouté à la sélection.
removeRange
Supprime une « plage » de la sélection.
removeAllRanges
Supprime toutes les « plages » de la sélection.
deleteFromDocument
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
Indique si un nœud donné appartient à la sélection.

Compatibilité des navigateurs

Update compatibility data on GitHub
OrdinateurMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariWebview AndroidChrome pour AndroidEdge MobileFirefox pour AndroidOpera pour AndroidSafari sur iOSSamsung Internet
Support simple
Expérimentale
Chrome Support complet OuiEdge Support complet OuiFirefox Support complet Oui
Notes
Support complet Oui
Notes
Notes The GlobalEventHandlers.onselectionchange and GlobalEventHandlers.onselectstart event handlers are supported as of Firefox 52.
IE Support complet 9Opera Support complet OuiSafari Support complet OuiWebView Android Support complet OuiChrome Android Support complet OuiEdge Mobile Support complet OuiFirefox Android Support complet Oui
Notes
Support complet Oui
Notes
Notes The GlobalEventHandlers.onselectionchange and GlobalEventHandlers.onselectstart event handlers are supported as of Firefox 52.
Opera Android Support complet OuiSafari iOS Support complet OuiSamsung Internet Android ?
addRange
Expérimentale
Chrome Support complet 1Edge Support complet OuiFirefox Support complet OuiIE ? Opera Support complet OuiSafari ? WebView Android Support complet OuiChrome Android Support complet OuiEdge Mobile Support complet OuiFirefox Android Support complet OuiOpera Android Support complet OuiSafari iOS ? Samsung Internet Android ?
anchorNode
Expérimentale
Chrome Support complet 1Edge Support complet OuiFirefox Support complet OuiIE ? Opera Support complet OuiSafari ? WebView Android Support complet OuiChrome Android Support complet OuiEdge Mobile Support complet OuiFirefox Android Support complet OuiOpera Android Support complet OuiSafari iOS ? Samsung Internet Android ?
anchorOffset
Expérimentale
Chrome Support complet 1Edge Support complet OuiFirefox Support complet OuiIE ? Opera Support complet OuiSafari ? WebView Android Support complet OuiChrome Android Support complet OuiEdge Mobile Support complet OuiFirefox Android Support complet OuiOpera Android Support complet OuiSafari iOS ? Samsung Internet Android ?
collapse
Expérimentale
Chrome Support complet OuiEdge Support complet OuiFirefox Support complet OuiIE Support complet 9Opera Support complet OuiSafari Support complet OuiWebView Android Support complet OuiChrome Android Support complet OuiEdge Mobile Support complet OuiFirefox Android Support complet OuiOpera Android Support complet OuiSafari iOS Support complet OuiSamsung Internet Android ?
collapseToStart
Expérimentale
Chrome Support complet OuiEdge Support complet OuiFirefox Support complet OuiIE ? Opera Support complet OuiSafari ? WebView Android Support complet OuiChrome Android Support complet OuiEdge Mobile Support complet OuiFirefox Android Support complet OuiOpera Android Support complet OuiSafari iOS ? Samsung Internet Android ?
collapseToEnd
Expérimentale
Chrome Support complet OuiEdge Support complet OuiFirefox Support complet OuiIE ? Opera Support complet OuiSafari ? WebView Android Support complet OuiChrome Android Support complet OuiEdge Mobile Support complet OuiFirefox Android Support complet OuiOpera Android Support complet OuiSafari iOS ? Samsung Internet Android ?
containsNode
Expérimentale
Chrome Support complet OuiEdge Support complet OuiFirefox Support complet 4
Notes
Support complet 4
Notes
Notes Before Firefox 35, the method didn't throw if node was null.
IE Aucun support NonOpera Support complet OuiSafari Support complet OuiWebView Android Support complet OuiChrome Android Support complet OuiEdge Mobile Support complet OuiFirefox Android Support complet 4
Notes
Support complet 4
Notes
Notes Before Firefox 35, the method didn't throw if node was null.
Opera Android Support complet OuiSafari iOS Support complet OuiSamsung Internet Android ?
deleteFromDocument
Expérimentale
Chrome Support complet OuiEdge Support complet OuiFirefox Support complet 55IE ? Opera Support complet OuiSafari ? WebView Android Support complet OuiChrome Android Support complet OuiEdge Mobile Support complet OuiFirefox Android Support complet 55Opera Android Support complet OuiSafari iOS ? Samsung Internet Android ?
empty() as alias of removeAllRanges()
Expérimentale
Chrome Support complet OuiEdge ? Firefox Support complet 55IE ? Opera Support complet OuiSafari Support complet OuiWebView Android Support complet OuiChrome Android Support complet OuiEdge Mobile ? Firefox Android Support complet 55Opera Android Support complet OuiSafari iOS Support complet OuiSamsung Internet Android ?
extend
Expérimentale
Chrome Support complet OuiEdge Support complet OuiFirefox Support complet OuiIE Aucun support NonOpera Support complet OuiSafari Support complet OuiWebView Android Aucun support NonChrome Android Support complet OuiEdge Mobile Support complet OuiFirefox Android Support complet OuiOpera Android Support complet OuiSafari iOS Support complet OuiSamsung Internet Android ?
focusNode
Expérimentale
Chrome Support complet OuiEdge Support complet OuiFirefox Support complet 3.6IE Support complet 10Opera Support complet OuiSafari Support complet 5.1WebView Android Support complet OuiChrome Android Support complet OuiEdge Mobile Support complet OuiFirefox Android Support complet OuiOpera Android Support complet OuiSafari iOS ? Samsung Internet Android ?
focusOffset
Expérimentale
Chrome Support complet OuiEdge Support complet OuiFirefox Support complet OuiIE ? Opera Support complet OuiSafari ? WebView Android Support complet OuiChrome Android Support complet OuiEdge Mobile Support complet OuiFirefox Android Support complet OuiOpera Android Support complet OuiSafari iOS ? Samsung Internet Android ?
getRangeAt
Expérimentale
Chrome Support complet OuiEdge Support complet OuiFirefox Support complet OuiIE ? Opera Support complet OuiSafari ? WebView Android Support complet OuiChrome Android Support complet OuiEdge Mobile Support complet OuiFirefox Android Support complet OuiOpera Android Support complet OuiSafari iOS ? Samsung Internet Android ?
isCollapsed
Expérimentale
Chrome Support complet 1Edge Support complet OuiFirefox Support complet OuiIE ? Opera Support complet OuiSafari ? WebView Android Support complet OuiChrome Android Support complet OuiEdge Mobile Support complet OuiFirefox Android Support complet OuiOpera Android Support complet OuiSafari iOS ? Samsung Internet Android ?
modify
ExpérimentaleNon-standard
Chrome Support complet OuiEdge ? Firefox Support complet 4IE ? Opera Support complet OuiSafari Support complet OuiWebView Android Support complet OuiChrome Android Support complet OuiEdge Mobile ? Firefox Android Support complet 4Opera Android Support complet OuiSafari iOS Support complet OuiSamsung Internet Android ?
rangeCount
Expérimentale
Chrome Support complet OuiEdge Support complet OuiFirefox Support complet OuiIE Support complet OuiOpera Support complet OuiSafari ? WebView Android Support complet OuiChrome Android Support complet OuiEdge Mobile Support complet OuiFirefox Android Support complet OuiOpera Android Support complet OuiSafari iOS ? Samsung Internet Android ?
removeRange
Expérimentale
Chrome Support complet 58Edge Support complet OuiFirefox Support complet OuiIE ? Opera Support complet 45Safari Aucun support NonWebView Android Support complet 58Chrome Android Support complet 58Edge Mobile Support complet OuiFirefox Android Support complet OuiOpera Android Support complet 45Safari iOS Aucun support NonSamsung Internet Android ?
removeAllRanges
Expérimentale
Chrome Support complet OuiEdge Support complet OuiFirefox Support complet OuiIE Support complet OuiOpera Support complet OuiSafari Support complet OuiWebView Android Support complet OuiChrome Android Support complet OuiEdge Mobile Support complet OuiFirefox Android Support complet OuiOpera Android Support complet OuiSafari iOS Support complet OuiSamsung Internet Android ?
selectAllChildren
Expérimentale
Chrome Support complet OuiEdge Support complet OuiFirefox Support complet OuiIE Support complet OuiOpera Support complet OuiSafari Support complet OuiWebView Android Support complet OuiChrome Android Support complet OuiEdge Mobile Support complet OuiFirefox Android Support complet OuiOpera Android Support complet OuiSafari iOS Support complet OuiSamsung Internet Android ?
setBaseAndExtent
Expérimentale
Chrome Support complet OuiEdge ? Firefox Support complet 53IE ? Opera Support complet OuiSafari ? WebView Android Support complet OuiChrome Android Support complet OuiEdge Mobile ? Firefox Android Support complet 53Opera Android Support complet OuiSafari iOS ? Samsung Internet Android ?
setPosition() as alias of collapse()
Expérimentale
Chrome Support complet OuiEdge ? Firefox Support complet 55IE ? Opera Support complet OuiSafari Support complet OuiWebView Android Support complet OuiChrome Android Support complet OuiEdge Mobile ? Firefox Android Support complet 55Opera Android Support complet OuiSafari iOS Support complet OuiSamsung Internet Android ?
toString
Expérimentale
Chrome Support complet 1Edge Support complet OuiFirefox Support complet OuiIE ? Opera Support complet OuiSafari ? WebView Android Support complet OuiChrome Android Support complet OuiEdge Mobile Support complet OuiFirefox Android Support complet OuiOpera Android Support complet OuiSafari iOS ? Samsung Internet Android ?
type
Expérimentale
Chrome Support complet OuiEdge Support complet OuiFirefox Support complet 57IE Support complet OuiOpera Support complet OuiSafari ? WebView Android Support complet OuiChrome Android Support complet OuiEdge Mobile Support complet OuiFirefox Android Support complet 57Opera Android Support complet OuiSafari iOS ? Samsung Internet Android ?

Légende

Support complet  
Support complet
Aucun support  
Aucun support
Compatibilité inconnue  
Compatibilité inconnue
Fonctionnalité expérimentale. Celle-ci peut être amenée à changer par la suite.
Fonctionnalité expérimentale. Celle-ci peut être amenée à changer par la suite.
Fonctionnalité non-standard. Celle-ci peut être incorrectement supportée par les autres navigateurs.
Fonctionnalité non-standard. Celle-ci peut être incorrectement supportée par les autres navigateurs.
Voir les notes d'implémentation.
Voir les notes d'implémentation.

Voir aussi

window.getSelectiondocument.getSelection(),Range

Liens externes

 

 

Étiquettes et contributeurs liés au document

Dernière mise à jour par : scientificware,