Forum Webscript.Ru

Программирование => JavaScript & JScript => Тема начата: golden-den от 05 Декабря 2005, 15:45:03

Название: Скрывающиийся список - почему так
Отправлено: golden-den от 05 Декабря 2005, 15:45:03
Вот простая страничка
скрипт скрывает и вновь показывает слой
Только работает все это как-то странно
Для того, чтобы ПЕРВЫЙ раз скрыть слой, необходимо нажать 2 раза
(это только первый раз когда нажимаешь на ссылку), а затем все работает норамально: нажал - показалось, нажал - скрылось







Untitled






















Название: Скрывающиийся список - почему так
Отправлено: commander от 05 Декабря 2005, 16:09:29
golden-den
и где ты это взял?
Название: Скрывающиийся список - почему так
Отправлено: golden-den от 05 Декабря 2005, 16:19:52
скрипт  - на сайте, который переделываю, а контент - сам
А в чем вопрос?
Название: Скрывающиийся список - почему так
Отправлено: CGVictor от 05 Декабря 2005, 17:02:30
golden-den
Скрипт большей частью состоит из бреда - если, конечно, тебя это интересует.
А подобное срабатывание - оттого, что начальное состояние display для элемента не задано.
Название: Скрывающиийся список - почему так
Отправлено: golden-den от 05 Декабря 2005, 17:10:40
CGVictor
задавал

не работало


В чем бред-то?
(Я в js плохо пока разбираюсь.)
В том, что так проверка на броузер организована?
Или в том, что столько функций сделано, когда можно просто написать
layer.style.display="none"

Или в том, что через стили css в скрипте скрываеся слой?
можно вроде через offsetHeight, только я не понял как...
Название: Скрывающиийся список - почему так
Отправлено: CGVictor от 05 Декабря 2005, 17:19:09
golden-den
Набросок вот...
[Toggled]

Toggle

Этого хватит.
Обрати внимание, кстати, на negative-проверку.
Название: Скрывающиийся список - почему так
Отправлено: ThE0ReTiC от 05 Декабря 2005, 20:13:30
Цитировать
CGVictor:
что начальное состояние display для элемента не задано.

[off] анекдот в тему:
Буратино дали 5  яблок. 2 он съел
Вопрос: Сколько яблок осталось у Буратино?
Думаете 3 - хрен. Правильный ответ - неизвестно сколько.
Мораль: Инициализируйте переменные всегда.
[/off]
Название: Скрывающиийся список - почему так
Отправлено: golden-den от 05 Декабря 2005, 20:30:30
странно
задавал

не работало

сделал так
if (bla.la.display == "inline"  ||   bla.la.display == "") { .... }

это при прописанном  начальном значении