JavaScript. Подробное руководство, 6-е издание, стр. 486

Напоминает свойство

<b>button</b>
, поддерживаемое в модели событий ІE и описанное выше.

<b>readonly string char</b>

Для событий клавиатуры это свойство хранит строку символов (т. е. может содержать более одного символа), сгенерированную событием.

<b>readonly string data</b>

Для событий «textinput» определяет введенный текст.

<b>readonly unsigned long deltaMode</b>

Для событий колесика мыши это свойство определяет соответствующую интерпретацию свойств

<b>deltaX, deltaY</b>
и
<b>deltaZ</b>
. Значением этого свойства может быть одна из констант: DOM_DELTA_PIXEL, DOM_DELTA_LINE, DOM_DELTA_PAGE. Конкретное значение определяется платформой и может зависеть от настроек системы или от факта удерживания нажатыми клавиш-модификаторов во время возникновения события колесика мыши.

<b>readonly long deltaX, deltaY, deltaZ</b>

Для событий колесика мыши эти свойства определяют величину прокрутки по каждой из трех осей.

<b>readonly unsigned long inputMethod</b>

Для событий «textinput» это свойство определяет способ ввода текста. Значением этого свойства может быть одна из констант: DOM_INPUT_METHOD_UNKNOWN, D0M_INPUT_ METHOD_KEYBOARD, DOM_INPUT_METHOD_PASTE, D0M_INPUT_METH0D_DR0P, DOM_INPUT_METHOD_IME, D0M_INPUT_METH0D_0PTI0N, DOM_INPUT_METHOD_HANDWRITING, DOM_INPUT_METHOD_VOICE, D0M_ INPUT_METHOD_MULTIMODAL, DOM_INPUT_METHOD_SCRIPT.

<b>readonly string key</b>

Для событий клавиатуры, генерирующих символы, это свойство получает то же значение, что и свойство

<b>char</b>
. Для событий клавиатуры, не генерирующих символы, это свойство содержит имя нажатой клавиши (такое как, «Tab» или «Down»).

<b>readonly string locale</b>

Для событий клавиатуры и событий «textinput» это свойство определяет код языка (например, «еn-GB»), идентифицирующий выбранную раскладку клавиатуры, если эта информация доступна.

<b>readonly unsigned long location</b>

Для событий клавиатуры это свойство определяет местоположение нажатой клавиши. Значением этого свойства может быть одна из констант: D0M_KEY_LOCATION_ STANDARD, D0M_KEY_LOATION_LEFT, DOM_KEY_LOCATION_RIGHT, DOM_KEY_LOCATION_NUMPAD, D0M_ KEY_LOCATION_M0BILE, D0M_KEY_LOCATION_JOYSTICK.

<b>readonly boolean repeat</b>

Для событий клавиатуры это свойство будет иметь значение true, если событие вызвано длительным удержанием клавиши в нажатом состоянии, вызвавшем автоповтор ввода.

Предлагаемые к реализации методы

Подобно предлагаемым к реализации свойствам, перечисленным выше, проектом стандарта предлагаются к реализации следующие методы, которые пока не реализованы ни в одном из броузеров.

<b>boolean getModifierState(string modifier)</b>

Для событий мыши и клавиатуры этот метод возвращает true, если в момент возбуждения события удерживалась нажатой указанная клавиша-модификатор modifier, и false - в противном случае. Значением аргумента modifier может быть одна из строк: «Alt», «AltGraph», «CapsLock», «Control», «Fn», «Meta», «NumLock», «Scroll», «Shift», «SymbolLock» и «Win».

EventSource

Comet-соединение c HTTP-сервером (EventTarget)

Объект

<b>EventSource</b>
представляет долгоживущее HTTP-соединение, посредством которого веб-сервер может отправлять клиенту текстовые сообщения. Чтобы использовать события, определяемые стандартом «Server-Sent Events», следует передать URL-адрес сервера конструктору
<b>EventSourсе()</b>
и затем зарегистрировать обработчик события «message» в полученном объекте EventSource.

Спецификация «Server-Sent Events» появилась совсем недавно и на момент написания этих строк поддерживалась не во всех броузерах.

Конструктор

<b>new EventSource(string url)</b>

Создает новый объект

<b>EventSource</b>
, подключенный к веб-серверу, определяемому аргументом url. Адрес url интерпретируется относительно URL-адреса документа.

Константы

Следующие константы определяют допустимые значения свойства

<b>readyState</b>
.

<b>unsigned short CONNECTING = 0</b>

Идет установка соединения, или соединение было закрыто и объект

<b>EventSource</b>
пытается восстановить его.

<b>unsigned short OPEN = 1</b>

Соединение установлено и готово к приему событий.

<b>unsigned short CLOSED = 2</b>

Соединение было закрыто либо вызовом метода

<b>close(),</b>
либо в результате фатальной ошибки, не позволяющей восстановить его.

Свойства

<b>readonly unsigned short readyState</b>

Состояние соединения. Возможные значения определяются константами, перечисленными выше.

<b>readonly string url</b>

Абсолютный URL-адрес, к которому подключен объект

<b>EventSource</b>
.

Методы

<b>void close()</b>

Закрывает соединение. После вызова этого метода объект

<b>EventSource</b>
не может больше использоваться. Если потребуется вновь установить соединение, следует создать новый объект
<b>EventSource</b>
.

Обработчики событий

Сетевые взаимодействия выполняются асинхронно, поэтому объект

<b>EventSource</b>
возбуждает события после открытия соединения, при появлении ошибок и при получении сообщений от сервера. Обработчики событий можно зарегистрировать с помощьк? перечисленных далее свойств или воспользовавшись методами интерфейса
<b>EventTarget</b>
. Все события, генерируемые объектом
<b>EventSource</b>
, посылаются самому объекту
<b>EventSource</b>
. Они не всплывают, и для них не предусмотрены действия по умолчанию, которые можно было бы отменить.

<b>onerгог</b>
Вызывается при обнаружении ошибки. Обработчику передается простой объект
<b>Event</b>
.

<b>onmessage</b>
Вызывается при получении сообщения от сервера. Обработчику передается объект события
<b>MessageEvent</b>
, а текст, отправленный сервером, доступен через свойство
<b>data</b>
этого объекта.