багзилла> addEventListener помог, но вопрос все ещё в силе
Я Делаю Это Так. Я Таки Пишу Отдельную Функцию, Принимающую Один Параметр:
function ClickHandler(E){ ... }//ClickHandler
Потом Ставлю Ее Обработчиком Элементу Так:
Element.onclick=ClickHandler;
А Вот В Самой Функции, Чтобы Получить Элемент, По Которому Пришло Собатие, Пишу Так Первой Строкой:
var Sender=document.all?event.srcElement:E.currentTarget;
И Это - Единственная Проверка На Браузер В Коде. Все Остальное Одинаково Для IE5+ И Mozilla.
Лирическое Отступление. Есть Только Одна Беда Небольшая. Если У Mozilla currentTarget - Это _Всегда_ Тот Элемент, К Которому Привзано Событие, А Вот У IE srcElement Это Так В Подавляющем Большинстве Случаев, Но Не Всегда :-). Например, В Случае С Назначением OnClick'а Для <TR> IE Передает srcElement'ом Не <TR>, А <TD>, В Которой Произошел Щелчок. Тогда Проверка Модифицируется: var Sender=document.all?event.srcElement.parentNode:E.currentTarget; Но, Впрочем, Это Единственный Случай, Который Мне Встретился.
P.S. Bugzilla, Кстати, Не Просто Слово. Так Называется Веб-Сервер, Где Идет Баг-Тракинг Мозиллы :-) |