Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Работа DOM в Firefox
 
 автор: pilip   (15.11.2006 в 14:30)   письмо автору
 
 

Вот такая проблема. Даже, как то неловко писать. :)
Никак не могу понять как правильно писать скрипты на JS, чтобы они нормально работали в Firefox. Дело в том, что технология доступа к элементам страницы по функции getElementById() работает в IE, в Opera, а в Firefox до элемента таким образом добраться не получается. Я уже пробовал коллекцию all[], хотя это, вроде бы только IE'шная возможность, пробовал прямую ссылку на body, а дальше через childes&siblings: document.body.firstChild.nextSibling и т.д.. Ничего не получается.
Помогите пожалуйста. Я даже не пойму - это проблема несоответствия спецификации каких-то функций или это может быть у меня Firefox какой-то ударенный, или плагина какого-то нет. Не знаю.
Спасибо за помощь.

   
 
 автор: 12345   (15.11.2006 в 14:36)   письмо автору
 
   для: pilip   (15.11.2006 в 14:30)
 

если id совпадает с именем какой-то переменной, в FF происходит подобная ошибка.

   
 
 автор: targa   (15.11.2006 в 15:02)   письмо автору
 
   для: pilip   (15.11.2006 в 14:30)
 

Странно. Я тестировал скрипты (они работают через getElementById()) именно под ФФ, работают без проблем.

Может у вас id где-то повторяется?

   
 
 автор: SHAman   (15.11.2006 в 15:41)   письмо автору
 
   для: targa   (15.11.2006 в 15:02)
 

Раньше писал

d.all['need_id']

теперь пишу

d.getElementById('need_id')


Перешел на второе написание как раз из-за того, что ФФ не понимает первое, а второе влет. Так что проблема вряд ли в ФФ. Скорее всего либо id повторяется, либо с кавычками замороты. Если вы передаете переменную как аргумент getElementById, то апострофы ставить не надо. Нужно ставить только тогда их, когда вы передаете именно имя, а не название переменной, содержащей это имя.

Блин, ФФ - какое-то наваждение! Даже Опера с ИЕ лучше друг под друга подстраиваются! Напишешь скрипт под ИЕ - работает. Чтоб оптимизировать под Оперу - пару строк дописал и все. Чтоб оптимизировать под ФФ после этого - нужно в два раза код увеличить! Я фигею, дорогая редакция! И приходится постоянно юзать конструкции типа:

d.layers?event:ev


ИМХО, ФФ - самый кривой браузер из нынеживущих.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования