багзилла> Я Делаю Это Так. > Я Таки Пишу Отдельную Функцию, Принимающую Один Параметр:
А зачем ?:)
> Element.onclick=ClickHandler;
Так я же говорю, на элемент SELECT не вешается событие - Mozilla выдает ошибку. Error: uncaught exception: [Exception... "Failure" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: file:///path/to/eventtest.html :: functionname :: line 17" data: no]
> А Вот В Самой Функции, Чтобы Получить Элемент, По Которому Пришло Собатие, Пишу Так Первой Строкой: > > 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;
А ты используй this - тогда IE тоже будет ссылаться на TR, и проверку не придется делать:
> P.S. Bugzilla, Кстати, Не Просто Слово. Так Называется Веб-Сервер, Где Идет Баг-Тракинг Мозиллы :-)
Знаем, потому и назвал так топик:) |