Сообщение от Ivan_Ivanoff_24
|
Спасибо за ответ, и если это возможно, не могли бы Вы немного подробнее описать процесс эмуляции события? Либо посоветовать какие-то материалы на эту тему.
И, пожалуйста, расскажите хотя бы вкратце, что происходит в классе Base из Вашего примера, назначение его свойств и методов.
Благодарю!
|
Объект Base служит как базовый класс, от которого наследуются мои объекты получая возможность слушать и генерировать события.
Он имеет 3 метода:
1) bind - подписываемся на события. Он принимает либо собыитие и обработчик, либо объект, в котором ключ - это имя события, а значение - обработчик. Пример использования:
new Base().bind("some event", function handler() {...});
new Base().bind({
"some event 1": function handler1() {...},
"some event 2": function handler2() {...}
});
2) unbind - отписываемся от событий.
var baseExtended = ... //объект с подписанными обработчиками.
baseExtended.unbind() // снимет все обработчики со всех событий объекта
baseExtended.unbind("event") // снимет все обработчики с именем события "event";
baseExtended.unbind("event", handler) // снимит конкретный обработчик который равен передаваемой функции (как removeEventListener)
3) - trigger - метод который запускает события (1-й аргумент - имя события, второй массив аргуметов которые придут в функции - слушатели);
baseExtended.trigger("event", [baseExtended]) // запускаем событие "event", всем слушателям придет первым аргументом автор события