Szukaj…


Składnia

  • Selection sel = window.getSelection ();
  • Selection sel = document.getSelection (); // równoważne z powyższym
  • Zakres zakresu = document.createRange ();
  • range.setStart (startNode, startOffset);
  • range.setEnd (endNode, endOffset);

Parametry

Parametr Detale
startOffset Jeśli węzeł jest węzłem tekstowym, jest to liczba znaków od początku startNode do początku zakresu. W przeciwnym razie jest to liczba węzłów potomnych między początkiem węzła startNode a początkiem zakresu.
endOffset Jeśli węzeł jest węzłem tekstowym, jest to liczba znaków od początku startNode do miejsca, w którym kończy się zakres. W przeciwnym razie jest to liczba węzłów potomnych między początkiem węzła startNode a końcem zakresu.

Uwagi

Interfejs API wyboru pozwala wyświetlać i zmieniać elementy i tekst, które są zaznaczone (podświetlone) w dokumencie.

Jest zaimplementowany jako pojedyncza instancja klasy Selection która dotyczy dokumentu, i zawiera kolekcję obiektów Range , z których każdy reprezentuje jeden ciągły wybrany obszar.

Praktycznie rzecz biorąc, żadna przeglądarka oprócz Mozilla Firefox nie obsługuje wielu zakresów wybranych elementów, a specyfikacja nie zachęca do tego. Ponadto większość użytkowników nie zna koncepcji wielu zakresów. W związku z tym programista może zwykle dotyczyć tylko jednego zakresu.

Odznacz wszystko, co jest zaznaczone

let sel = document.getSelection();
sel.removeAllRanges();

Wybierz zawartość elementu

let sel = document.getSelection();

let myNode = document.getElementById('element-to-select');

let range = document.createRange();
range.selectNodeContents(myNode);

sel.addRange(range);

Konieczne może być najpierw usunięcie wszystkich zakresów poprzedniego wyboru, ponieważ większość przeglądarek nie obsługuje wielu zakresów.

Uzyskaj tekst zaznaczenia

let sel = document.getSelection();
let text = sel.toString();
console.log(text); // logs what the user selected

Alternatywnie, ponieważ funkcja członka toString jest wywoływana automatycznie przez niektóre funkcje podczas konwertowania obiektu na ciąg, nie zawsze trzeba go wywoływać samodzielnie.

console.log(document.getSelection());


Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow