Следственный эксперимент>> А какую лишнюю работу я делаю? > > Определяешь Элемент, Ответственный За Обработку События > А в твоем случае назначаю обработчик. Разницы в объеме работы не вижу
>> Определил объект и в зависимости от результата произвел действия. Куда еще минимизировать усилия ?))) >> Зачем сто раз повторять одно и то же, если можно, обработав событие и поняв, что его вызвал элемент a_n, сотворить с ним то, что нужно. > > Вот Это "Поняв, Что Его Вызвал Элемент" - Как? Мышиное Событие Может Быть Вызвано _Любым_ Видимым Ребенком Нужного Элемента. Хорошо, Если Там Только textNode, А Если Там Целая Структура? Я Приводил Пример С Вложенными В <TD> Формой И Fieldset'ом. В Этом Случае - Единственный Способ Определить, В Зоне Действия Какого Элемента Произошло Событие - Это Подъем Вверх По Дерерву От Источника События До Тех Пор, Пока Не Встретится Нужный.
Какой подъем ? Событие поднимается само. Весь анализ el=(window.srcElement): window.srcElement ? ev.target; if (el.id=='toChtoNujno1'){....} if (substr(el.id,1,2)=='toChtoNujno2'){....} if (el.className=='toChtoNujno3'){....} Этого анализа ровно столько, сколько кода при назначении обработчиков - надеюсь, возражать не будешь? Я же на рассматриваю событие для всех элементов дерева - рано или поздно его до нужного нода броузер сам в зубах принесет.
>> Во-вторых, при этом разделяются сущности - есть с одной стороны документ, в котором нет ничего лишнего, чистая иерархия объектов, а с другой в одном месте собрано его поведение. > > А Я Где-То Говорил Об Обратном? Да, Я Написал Где-То Выше <TD OnClick="...">, Но Это Был Пример, И Он Был О Другом. Да, Все Правильно: Структура Документа Должна Быть Отделена И От Динамики, И От Презентации (CSS). Однако, Это Не Повод Писать Динамику Криво. > Почему "криво"? Почему назначить обработчики вначале - "ровно", а фактически сделать то-же самое, но в другом месте - "криво" ? Измеряя геометрию нужно быть уверенным,что твой инструмент идеально прям.
>> В идеале в документе не должно вообще после <body> быть никаких элементов скриптов. > > Тут Маленькая Справка Синтаксическая. Дело В Том, Что Элемент <Script> Не Может Находиться Нигде, Кроме Как В <Body> :-). Это Стандарт (И Да, Я Знаю, Что ВСЕ Браузеры Все Таки Понимают Его В <Head>). Но Это Не Мешает Структуре Документа. <Script> Не Обладает Собственной HTML'ной Семантикой. Чистый HTML-Парсер Вообще Может Эти Элементы Игнорировать. > Мешает восприятию структуры документа. Но я говорю про недостижимый идеал ) Я не против стандартов, если они поддерживаются броузерами. А если они умозрительны и ветхозаветны, то их нарушить - грех небольшой. Мало ли что творцам стандартов 10 лет назад в голову могло придти. Думаю, наша дискуссия начинает склоняться в сторону эстетики, что, не делая ее менее интересной, неумолимо снижает уровень продуктивности. А назначением обработчиков твоим способом (спасибо за подсказку) я , несомненно буду использовать. Но Только Там, Где Это Действительно Необходимо ))) |