Ricerca…
Sintassi
- Selezione sel = window.getSelection ();
- Selezione sel = document.getSelection (); // equivalente a quanto sopra
- Intervallo range = document.createRange ();
- range.setStart (startNode, startOffset);
- range.setEnd (endNode, endOffset);
Parametri
Parametro | Dettagli |
---|---|
startOffset | Se il nodo è un nodo di testo, è il numero di caratteri dall'inizio di startNode a dove inizia l'intervallo. Altrimenti, è il numero di nodi figlio tra l'inizio di startNode e l'inizio dell'intervallo. |
endOffset | Se il nodo è un nodo di testo, è il numero di caratteri dall'inizio di startNode a dove finisce l'intervallo. Altrimenti, è il numero di nodi figlio tra l'inizio di startNode in cui termina l'intervallo. |
Osservazioni
L'API di selezione consente di visualizzare e modificare gli elementi e il testo selezionati (evidenziati) nel documento.
È implementato come un'istanza di Selection
singleton che si applica al documento e contiene una raccolta di oggetti Range
, ognuno dei quali rappresenta un'area contigua selezionata.
In pratica, nessun browser eccetto Mozilla Firefox supporta più intervalli nelle selezioni e questo non è nemmeno incoraggiato dalle specifiche. Inoltre, la maggior parte degli utenti non ha familiarità con il concetto di più intervalli. Di conseguenza, uno sviluppatore di solito può riguardare solo se stesso con un intervallo.
Deseleziona tutto ciò che è selezionato
let sel = document.getSelection();
sel.removeAllRanges();
Seleziona il contenuto di un elemento
let sel = document.getSelection();
let myNode = document.getElementById('element-to-select');
let range = document.createRange();
range.selectNodeContents(myNode);
sel.addRange(range);
Potrebbe essere necessario rimuovere prima tutti gli intervalli della selezione precedente, poiché la maggior parte dei browser non supporta più intervalli.
Ottieni il testo della selezione
let sel = document.getSelection();
let text = sel.toString();
console.log(text); // logs what the user selected
In alternativa, poiché la funzione membro toString
viene chiamata automaticamente da alcune funzioni quando si converte l'oggetto in una stringa, non è sempre necessario chiamarla da sé.
console.log(document.getSelection());