Добавляем...


Маршрутизация событий
События выполняют "восхождение" строго по тем объектам в иерархии, которые их содержат. Но в Internet Explorer 5.5+ существует также примитивная возможность направить событие к другому объекту. Каждый объект имеет метод fireEvent(), передающий событие тому объекту, для которого вызывается метод:

объект.fireEvent(''обработчик" [, объектEvent])

Первым аргументом является строка, соответствующая обработчику вызываемого события, например "onclick". Необязательный параметр объектEvent — это объект Event, из которого будет создан новый объект Event. Если объектEvent не задан, создаваемый объект Event будет инициализирован так, будто событие произошло в данном объекте. Если же объектEvent указан, его свойства будут скопированы в новый объект Event, за исключением свойств cancelBubble, returnValue, srcElement и type. Эти значения всегда устанавливаются равными (соответственно) false, true, элементу, в котором вызывается событие, и типу события, заданному первым аргументом метода fireEvent (). Главным недостатком этого метода является то, что в результате его вызова создается новый объект Event, так что ссылка на оригинальный целевой объект (event. srcElement) практически сразу теряется. Следующий пример иллюстрирует применение этого метода:

function handleClick() {
event.cancelBubble = true;
// Передача события первому изображению на странице
document.images[0].fireEvent("onclick", event);
}

При установке этой функции в качестве обработчика события click она переправит событие первому изображению на странице.
Направляя событие другому объекту, не забудьте отменить оригинальное событие, поскольку в противном случае событие "разветвится" и продолжит свое движение по иерархии, добавив в очередь событий новое событие с помощью fireEvent (). Новое событие будет обработано только после того, как оригинальное событие закончит движение.


добавить комментарий
(без перезагрузки и регистрации)


10 случайных разделов

Что ищем на сайте ?


Примеры кода на сайте







@ 2008-2011 Amber
При использовании материалов ссылка на сайт обязательна
Яндекс.Метрика