2014-09-01 3 views
0

Есть ли способ запуска пользовательского события в javascript, чтобы он распространялся с использованием модели capture?Как запустить настраиваемое событие в фазе захвата

У меня есть иерархия элементов, которые я использую как средство для обмена данными между объектами. Каждый уровень иерархии представляет собой подсемейство объекта. В идеале я мог бы инициировать событие для объектов каждой семьи или подсемейства, используя их общего предка.

например:

animals |_ | mammals | |_cats | |_dogs |_ reptiles |_alligators |_dinosaurs

(пожалуйста, никаких замечаний по моей неадекватной систематике :))

Я хотел бы иметь возможность вызвать событие для всех животных, всех млекопитающих или всех кошек или событий в один экземпляр cat.

Тем не менее, я могу найти примеры пользовательских событий, используя фазу барботирования, поэтому я хочу знать, не ли это что-то у меня, или это действительно невозможно.

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

Любые идеи?

+0

По сути, вы пытаетесь зарегистрировать один обработчик событий для каждой группы, а не прикрепляться к каждому объекту внутри? – JNF

+0

Как один из вариантов использования - да. Я хочу, чтобы иметь возможность инициировать событие для любой группы декандаментов через их родителя, без необходимости повторять каждую из них, чтобы запускать ее вручную на каждом экземпляре. – AriehGlazer

+0

Вы когда-нибудь находили решение? – Michael

ответ

0

Это невозможно с текущей спецификацией событий DOM, поскольку она поддерживает только фазу пузырьков.