Сетевые взаимодействия выполняются асинхронно, поэтому объект
EventSource
возбуждает события после открытия соединения, при появлении ошибок и при получении сообщений от сервера. Обработчики событий можно зарегистрировать с помощьк? перечисленных далее свойств или воспользовавшись методами интерфейса
EventTarget
. Все события, генерируемые объектом
EventSource
, посылаются самому объекту
EventSource
. Они не всплывают, и для них не предусмотрены действия по умолчанию, которые можно было бы отменить.
onerгог
Вызывается при обнаружении ошибки. Обработчику передается простой объект
Event
.
onmessage
Вызывается при получении сообщения от сервера. Обработчику передается объект события
MessageEvent
, а текст, отправленный сервером, доступен через свойство
data
этого объекта.
оnореп
Вызывается при открытии соединения. Обработчику передается простой объект
Event
.
EventTarget
объект, способный принимать события
Объекты, для которых генерируются события, и объекты, которые находятся на пути всплывающих событий, должны предоставлять возможность определять обработчики этих событий. Такие объекты обычно определяют свойства обработчиков событий, имена которых начинаются с префикса «оn» и, как правило, определяют методы, описываемые ниже. Регистрация обработчиков событий - поразительно сложная тема. За подробностями обращайтесь к разделу 17.2 и обратите внимание, что ІE версии 8 и ниже использует другие методы, чем все остальные броузеры; эти методы будут описаны в специальном разделе ниже.
в качестве обработчика событий типа type. Аргумент type– строка с именем без префикса «оn». Аргумент useCapture должен иметь значение true, если регистрируется перехватывающий обработчик (раздел 17.2.3) в предке элемента, являющегося истинной целью события. Обратите внимание, что некоторые броузеры все еще требуют передачи этой функции третьего аргумента, поэтому при регистрации обычного, неперехватывающего, обработчика в третьем аргументе следует передавать false,
boolean dispatchEvent(Event event)
Отправляет данному элементу искусственное событие event. Чтобы отправить событие, необходимо создать новый объект
Event
вызовом метода
document.createEvent
с именем события (таким как «Events», в случае простого события). Затем инициализировать его методом инициализации созданного объекта
Event
: для простых событий - вызовом метода
initEvent
(см.
Event
). После этого отправить инициализированное событие, передав его рассматриваемому методу. В современных броузерах каждый объект
Event
имеет свойство
isTrusted
. Для искуственных событий, посылаемых программно, это свойство будет иметь значение false. Различные типы объектов событий определяют собственные методы инициализации. Эти методы редко используются на практике, имеют длинные списки аргументов и не описываются в этой книге. Если вам потребуется создать, инициализировать и послать искуственное событие, более сложное, чем простой объект
Event
, поищите описание соответствующего метода инициализации в электронной документации.
void removeEventListener(string type, function listener, [boolean useCapture])
Удаляет
зарегистрированный обработчик
listener
события. Принимает те же аргументы, что и метод
addEventListener.
Методы Internet Explorer
IE версии 8 и ниже не поддерживает методы
addEventListener
и
removeEventListener.
Вместо них он реализует два более простых метода, которые описываются ниже. (Некоторые важные отличия перечислены в разделе 17.2.4.)
void attachEvent(string type, function listener)
Регистрирует функцию
listener
как обработчик событий типа type. Обратите внимание, что этот метод требует, чтобы имя в аргументе type включало префикс «оn».
void detachEvent(string type, function listener)
Этот метод действует как обратный методу
attachEvent.
FieldSet
элемент <fieldset> в HTML-формах (Node, Element, FormControl)
Объект
FieldSet
представляет элемент
<fieldset>
в HTML-формах
<form>.
Объекты
FieldSet
реализуют многие, но не все свойства и методы интерфейса
FormControl
.
Свойства
boolean disabled
Значение true, если объект
FieldSet
находится в неактивном состоянии. Деактивация элемента
FieldSet
деактивирует содержащиеся в нем элементы форм.
readonly HTMLFormControlsCollection elements
Объект, подобный массиву, содержащий все элементы форм, имеющиеся внутри тега
<fieldset>.
File
файл в локальной файловой системе (Blob)
Тип
File
является подтипом
Blob
. Объект
File
имеет имя и, возможно, дату последнего изменения. Он представляет файл в локальной файловой системе. Получить выбранный пользователем файл можно из массива
files
элемента
<input type=file>
или из массива
files
объекта DataTransfer, связанного с объектом
Event
, который получает обработчик события «drop».
Имеется также возможность получить объекты
File
, представляющие файлы в закрытой, изолированной файловой системе, как описано в разделе 22.7. Однако на момент написания этих строк прикладной интерфейс доступа к файловой системе оставался нестабильным, поэтому он не описывается в этом справочнике.
Содержимое файла можно выгрузить на сервер с помощью объекта
FormData
или передав объект
File
методу
XMLHttpRequest.send,
однако непосредственно с объектом File можно выполнить не очень много операций. Чтобы прочитать содержимое файла, следует использовать объект