| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > JavaScript: Общие вопросы > Функция срабатывания при наступлении события |
| Автор: barcelona 8.5.2008, 08:29 | ||
| Здравствуйте. Можно ли написать функцию, которая срабатывала бы при наступлении любого события на странице? Она бы проверяла тип и источник события, а потом действовала по обстоятельствам. Обработчик:
не пашет в IE. Можно ли как-то навесить на окно функцию, которая бы выполняла некоторые действия? |
| Автор: Ghirik 9.5.2008, 07:44 |
| Отковенно бандитские цели? |
| Автор: bars80080 12.5.2008, 10:49 |
| почему бандитские? я б тоже не прочь узнать по сути дела, это универсальная разгрузка html-разметки от всякого on...="" в этом случае, мы просто подключаем стандартную функцию обработки события, а затем чем-нибудь простым (типа switch... case...) сделать лесенку действий |
| Автор: Fortop 12.5.2008, 13:06 | ||
| bars80080, кто мешает повесить один общий обработчик на все элементы? Пример для jQuery
|
| Автор: bars80080 12.5.2008, 13:33 |
| а если без jquery, и как определить какой элемент стал инициатором события, и какое событие произошло? |
| Автор: Fortop 12.5.2008, 14:18 |
| bars80080, если я правильно помню, то события в JavaScript либо всплывают, либо погружаются (в зависимости от модели браузера). И соответственно проходят всю цепочку от document до целевого объекта. Поэтому, возможно, будет достаточно повесить нужные обработчики на document. (надо поэксперементировать) Ну, а источник события, по-моему храниться в самом объекте события Добавлено через 1 минуту и 7 секунд Да, уточняю. Для каждого события потребуется свой обработчик! Т.е. для click, change, onmouseover - отдельные обработчики - тут ты не выкрутишься никак. |
| Автор: krundetz 12.5.2008, 15:22 |
| А почему бы не попробовать реализовать слушателя событий? |
| Автор: bars80080 12.5.2008, 15:27 |
? по-подробней можно? |
| Автор: Ghirik 12.5.2008, 15:48 |
| http://webo.in/articles/habrahabr/04-speed-up-events-handlers/ |
| Автор: krundetz 13.5.2008, 10:45 | ||
Я имел в реализовать шаблон проектирования слушатель(наблюдатель, Observer). Принцип тот же что и в статье ссылка на которую дана выше Ghirik |