Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > JavaScript: Общие вопросы > Анимация открытия формы |
Автор: artsb 14.11.2008, 11:15 | ||||||
Приветствую всех! Хочу сделать анимацию открытия формы. Использую такой код:
Страница выглядит так:
Эта конструкция работает везде, кроме FF (у меня 2.0.0.11). Почему? И как можно сделать, чтобы если форма ещё не открылась(закрылась) и нажать "Закрыть(Открыть) форму", она сразу же закрывалась(открывалась)? А то сейчас, она сначала откроется(закроется) до конца, а только потом закрывается(открывается). Ещё, я видел такой код:
и он работал! А когда я не указваю единицу измерения мой код не работает. И что за ids.id? У меня оно равно undefined. |
Автор: artsb 14.11.2008, 16:44 | ||
Вот так, вроде бы, добился результата, о котором спрашивал во втором вопросе:
Конечно, код кривоват. Если есть более хороший способ - опишите плиз. |
Автор: ksnk 14.11.2008, 16:59 | ||
Вот, как-то тут на форуме сочинял функцию анимирования...
Тестовый стендец, конечно, гюковат. В Опере oncontextmenu не работает, однако проверить функцию позволяет... |
Автор: artsb 14.11.2008, 19:37 |
Спасибо. Попробую. А вы не знаете, почему мой код в ff не работает? |
Автор: ksnk 14.11.2008, 19:54 |
Вообще-то в том коде уже были правильные поползновения ![]() setTimeout(ids+".style.height='"+c+"px';",2*c) на setTimeout("document.getElementById('"+ids+"').style.height='"+c+"px';",2*c) |
Автор: artsb 14.11.2008, 23:03 |
А зачем менять? Ведь и так работает. Или это нужно для ff? |
Автор: ksnk 14.11.2008, 23:11 | ||
для FF, для Оперы, для Хрома... Для бОльшего соответствия рекомендациям w3c ![]() |
Автор: artsb 14.11.2008, 23:17 | ||
Спасибо. Действительно, ff стал понимать. Вы будете смеяться, но... Решил переписать скрипт так, чтобы форма именно выезжала сверху вниз (до этого, она просто становилась видисой сверху вниз). Также для этого изменил стиль таблицы position: relative; В цикле меняю положение таблицы, чтобы её нижний край всё время совпадал с нижним краем раскрывающегося div'а.
В IE (у меня IE6) не работате ![]() И нет консоли, чтобы узнать в какую сторону рыть... Даже не знаю, может он не понимает relative? |
Автор: artsb 15.11.2008, 01:02 | ||||||
Уже разобрался. ![]()
Оказывается IE не понимал вот эту строчку:
А именно "'-"+fh+"px'" Записал так: '-'+fh+'px' и всё заработало. Единственное, при закрытии формы в IE появляется жёлтый треугольник на панели состояния, значит есть ошибка. В консоли ff написано:
Что можно сделать? |
Автор: artsb 15.11.2008, 10:35 | ||||
![]()
Я хотел получить это: '-555px' Спасибо за советы. |