Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Объект selection

Internet Explorer 4.0x использует объект document.selection который включает в себя свойства и некоторые методы для управления выделениями. Объект selection предоставляет информацию о тексте и элементах, которые пользователь выделил с помощью мыши. Это может быть очень полезно, если вы хотите произвести некоторые действия, основанные на том, что выделил пользователь.

Свойство type объекта selection определяет тип выделения. Это строка, доступная только для чтения, которая может принимать одно из следующих значений:

ЗначениеОписание
NoneНет выделения или точки вставки.
TextВыделен только текст.
ControlВыделены структуры управления.

Значение по умолчанию, естественно, "None" - когда нет выделения. Поэтому, сравнение значения document.selection.type с "None" в Internet Explorer 4.0x, равносильно сравнению значения возвращенного методом document.getSelection() с "" в Navigator 4.0x

Объект selection имеет следующие методы:

МетодОписание
clear() Очищает содержимое текущего выделения.
empty() Снимает текущее выделение.
createRange() Создает объект TextRange для текущего выделения.

Рассмотрим следующее выражение:

document.onmouseup = document.selection.clear;

Если вы вставить это выражение в скрипт, то браузер будет удалять все выделения. Другими словами, когда пользователь выделяет часть документа, браузер немедленно удаляет его. Если выделение содержит не текстовые элементы, то они будут удалены тоже. Соответственно, страница с новым содержимым будет перерисована. Обратите внимание, что метод clear() описан как clear (не clear()), потому что обработчику события должна быть присвоена ссылка на функцию (а не вызов функции). Имейте ввиду, что этот скрипт не работает в Navigator 4.0x, так как пользуется преимуществом объекта selection.

Метод empty() просто снимает текущее выделение. Замечательно, но бесполезно использовать этот метод, для создания страницы, с невозможностью выделения.

document.onmouseup = document.selection.empty;

Это выражение указывает браузеру снимать любое выделение, существующее на странице. Другими словами, оно снимает подсветку с выделения. Имейте ввиду, что метод empty() помимо всего прокручивает рабочее окно в самый верх страницы. Поэтому, приведенное выражение скроллирует рабочее окно к верху страницы, всегда, когда вы отпускаете кнопку мыши.

Метод createRange() очень просто. Он возвращает объект TextRange для текущего выделения. Вот пример:

var range = document.selection.createRange();

Работа с объектом, и его данными - это уже другая история. Мы рассмотрим это в следующем разделе этой статьи. Просто продолжите чтение, чтобы узнать, как использовать новый объект, и как написать функцию эквивалентную методу document.getSelection() в Navigator 4.0x.

Назад | Оглавление | Далее

Оставить комментарий

Комментарий:
можно использовать BB-коды
Максимальная длина комментария - 4000 символов.
 
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог