![]() |
Модераторы: Sardar, Aliance |
![]() ![]() ![]() |
|
Innuendo |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 745 Регистрация: 24.12.2005 Где: Молдова Репутация: 2 Всего: 6 |
При нажатии на кнопку, должно появится окошечко (див) по центру экрана.
*Пометка: данный код для FireFox* Я его центрую, и хочу высветить, но когда див ещё не высвечен, то его координаты не меняются.. То есть получается, я сначала его показываю, а потом двигаю.. и вот это движение, как раз то и видно (как он с края экрана в центр быстро двинулся):
это фрагмент кода. Как сделать, чтоб он сначала его расположил, а потом показал? -------------------- =) |
|||
|
||||
12345c |
|
|||
![]() Круглый ![]() ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 2018 Регистрация: 26.12.2005 Где: наша не пропадала ? Репутация: 57 Всего: 101 |
Да, такое наблюдается.
setTimeout('ourDiv.style.display="";',99); -------------------- Google Code Playground - онлайн-отладка своих примеров HTML+JS без регистрации, с сохранением по URL, без кириллицы. Go |
|||
|
||||
Innuendo |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 745 Регистрация: 24.12.2005 Где: Молдова Репутация: 2 Всего: 6 |
а я вот не много не понимаю...
что это даст? то есть изменит размеры, и после 99 милисекунд только покажет? а почему оно будет работать? а то нет ![]() и я вот всё не могу найти различие в setInterval и setTimeout -------------------- =) |
|||
|
||||
Alx |
|
|||
Ajaxy ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2903 Регистрация: 26.11.2003 Где: Cutopia Репутация: 10 Всего: 78 |
Innuendo,
Как я понимаю, Мозилла не работает с объектами, у которых display:none;. Даже с нульфреймами из-за этого глюки. советую использовать visibility:hidden;, тем более, что див абсолютно позиционированный и на расположение элементов на странице это не повлияет. так же можешь попробывать height и width = 0. что касается setTimeout() и setInterval(), то различаются они тем, что setTimeout("{expression}",{time}) создаёт паузу на время в {time} миллисекунд, после которой выполняется {expression}. var interval = setInterval("{expression}",{time}) создает счетчик, который выполняет одно и то же {expression} через каждые {time} миллисекунд и возвращает свой идентификатор, с помощью которого его можно будет удалить через метод clearInterval({interval}) вот те какой красивый пример сделал ![]() открой через IE ;)
Это сообщение отредактировал(а) Alx - 14.2.2006, 22:15 |
|||
|
||||
Innuendo |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 745 Регистрация: 24.12.2005 Где: Молдова Репутация: 2 Всего: 6 |
Alx, забавно
то есть если у дива position:absolute, то visibility:hidden не влияет на располжение других элементов? просто я никому z-index не ставил... -------------------- =) |
|||
|
||||
Alx |
|
|||
Ajaxy ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2903 Регистрация: 26.11.2003 Где: Cutopia Репутация: 10 Всего: 78 |
нет, каэшн) а z-index и не надо)
балин, парсеср кривит ![]() чтобы мой скрипт заработал с солнышками, вот так напиши: window.interval = setInterval("document.body.innerHTML+=' & #9788; '",500); тока пробел убери перел #9788, тогда красиво буит, я старался ![]() |
|||
|
||||
Innuendo |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 745 Регистрация: 24.12.2005 Где: Молдова Репутация: 2 Всего: 6 |
гы
![]() ![]() + всем плюсы за помощь ![]() Это сообщение отредактировал(а) Innuendo - 14.2.2006, 22:36 -------------------- =) |
|||
|
||||
12345c |
|
|||
![]() Круглый ![]() ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 2018 Регистрация: 26.12.2005 Где: наша не пропадала ? Репутация: 57 Всего: 101 |
Да. СМысл самый очевидный - если с корректным показом есть глюки - делаем показ позже. Такие нестыковки в событиях - естественное дело для такой сложной системы как DOM. Все браузеры в эволюции проходят через такие мелкие нестыковки, которые надо подчищать техническими задержками. С IE5.0 и onload такое наблюдалось, а прорисовка большой картинки до сих пор запаздывает после её генерации на 0.5-1 с. Года через 2, вот увидишь, эта задержка в FF не понадобится ![]() -------------------- Google Code Playground - онлайн-отладка своих примеров HTML+JS без регистрации, с сохранением по URL, без кириллицы. Go |
|||
|
||||
Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Парни, что то вы мудрите, никто не подумал поставить style.display=... после сдвигания элемента? Как только display станет отличным от none элемент встанет в отрисовку, понадобяться все другие стили, что к этому моменту уже установлены.
-------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
12345c |
|
|||
![]() Круглый ![]() ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 2018 Регистрация: 26.12.2005 Где: наша не пропадала ? Репутация: 57 Всего: 101 |
Sardar, я подобное делал в "падающем снеге", там "после" не помогло в FF, понадобилась такая же задержка.
-------------------- Google Code Playground - онлайн-отладка своих примеров HTML+JS без регистрации, с сохранением по URL, без кириллицы. Go |
|||
|
||||
Innuendo |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 745 Регистрация: 24.12.2005 Где: Молдова Репутация: 2 Всего: 6 |
Sardar, конечно пробовал
![]() -------------------- =) |
|||
|
||||
Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
В смысле нельзя? Да изменения будут не видны, т.к. слой выкинут из отрисовки. В чём проявляться проблема? -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
Innuendo |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 745 Регистрация: 24.12.2005 Где: Молдова Репутация: 2 Всего: 6 |
Sardar,
ну так вот.. я задаю top и left по центру, а потом показываю.. а он изменение top и left не проделает... он их может проделать только после того, как display= "" -------------------- =) |
|||
|
||||
Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Млин ну не мальенкий же, уже долго на форуме, а траблу пояснить не можешь ![]() Как понять не работает? По идее вообще слой под мозиллой сдвигаться не должен, т.к. left|top ты указываешь просто число без спецификации едениц, добавь + 'px', поставь display="block" последней строчкой, запусти ![]() -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
Alx |
|
||||
Ajaxy ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2903 Регистрация: 26.11.2003 Где: Cutopia Репутация: 10 Всего: 78 |
так работает... offset(Height|Width) перед отображением юзать нельзя, т.к. они равняются "0".
Это сообщение отредактировал(а) Sardar - 15.2.2006, 20:26 |
||||
|
|||||
![]() ![]() ![]() |
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |