--- title: Window.getSelection() slug: Web/API/Window/getSelection translation_of: Web/API/Window/getSelection ---
{{ ApiRef() }}

Коротко

Метод возвращает объект {{domxref("Selection")}}, представленный в виде диапазона текста, который пользователь выделил на странице.

Синтаксис

selection = window.getSelection();

Значение

Объект {{domxref("Selection")}}.

При добавлении в параметр пустую строку или воспользовавшись методом {{jsxref("Selection.toString()")}} вам вернут строку, которую выделил пользователь.

Пример

function foo() {
    var selObj = window.getSelection();
    alert(selObj);
    var selRange = selObj.getRangeAt(0);
    // вернёт диапазон Range
}

Примечания

String representation of the Selection object

В JavaScript при попытке передать в функцию, принимающую строку (как на пример {{ Domxref("window.alert()") }} или же {{ Domxref("document.write()") }}), функция попробует сделать из любого параметра строку, даже если этот параметр является объектом, функцией со своими методами и свойствами.

В приведённом выше примере selObj.toString() автоматически задействуется, когда мы передаём в {{domxref("window.alert()")}} переменную selObj как параметр, который должен быть строкой. Однако мы не можем использовать свойства и метода объекта String, как на пример : length, substr. В следствии чего, вам необходимо будет применить вручную метод   toString(), как тут:

var selectedText = selObj.toString();

Родственные объекты

Вы так же можете использовать такой способ вызова {{domxref("Document.getSelection()")}}, который работает идентично {{domxref("Window.getSelection()")}}.

Поля ввода HTML (inputs) предоставляют более удобный API для работы с выделенным текстом (смотрите {{domxref("HTMLInputElement.setSelectionRange()")}}).

На заметку, разница между selection и focus. {{domxref("Document.activeElement")}}  - это то, что вернётся элемент, который выделен (focused) .

Спецификации

Спецификация Статус Комментарий
{{SpecName("Selection API", "#extensions-to-window-interface", "Window.getSelection()")}} {{Spec2("Selection API")}} Новая специф.
{{SpecName("HTML Editing", "#dom-window-getselection", "Window.getSelection()")}} {{Spec2("HTML Editing")}} Начальное определение

Совместимость с браузером

{{Compat("api.Window.getSelection")}}

Смотрите также