Программирование > JavaScript & JScript
Переход по полям формы при помощи Enter
mike:
гоша
--- Цитировать ---гоша:
почему это плохо?
1. прописывается обработчик для каждого элемента
2. требуется явно указывать "следующий" элемент
3. каким боком тут navigator.appName вообще неясно
--- Конец цитаты ---
1-2. Минус, но таким образом можно дополнительно имитировать tabindex в браузерах, которые его не поддерживают.
3. Забыл про кроссбраузерность. keyCode не везде работает в Мозиллах ранних версий.
--- Цитировать ---гоша:
альтернативы?
1. прописывать обработчик для формы
2. искать "следующий" элемент самостоятельно
3. вообще, не писать лишнего
--- Конец цитаты ---
1. Угу, можно.
2. не всегда правильно, т.к. при измененном tabindex придется держать в памяти полный путь. Впрочем, это альтернатива приписыванию обработчиков каждому элементу.
3. Это уже не альтернатива, давай без подобных пунктов.
Теперь по твоему коду. В MSIE 6 и Опере 7 он у меня отказался работать, полагаю, что по причине
--- Код: ---
if(event.srcElement){
event.keyCode=9;
return true;
}
if (!event.target || event.target.type == "submit")
return true
--- Конец кода ---
Так что пока что он поддерживает только Мозиллу. А это разве хорошо? Может, я напишу лишнего, но код будет рабочим...
гоша:
решение под ие я уже приводил выше
mike:
--- Цитировать ---гоша:
решение под ие я уже приводил выше
--- Конец цитаты ---
А как все-таки насчет кроссбраузерности? Решение под IE - это решение под IE, не больше...
mike:
Вдогонку: к тому же оно пасует на кнопке submit: форма не отправляется на сервер.
гоша:
сомневаюсь в целесообразности дальнейшего флейма
автор темы получил достаточно информации
Навигация
Перейти к полной версии