![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| ayax2005 |
|
||||||
|
echo $smile ![]() ![]() Профиль Группа: Участник Сообщений: 516 Регистрация: 17.4.2008 Где: Питер Репутация: 2 Всего: 11 |
Добрый день!
Боевая задача: имеется блок, содержащий в ряд N изображений и кнопка. По событию нажатия кнопки происходит сдвиг изображений влево на заданное количество пикселей. HTML:
где cntimg - количество изображений. JS:
Проблема в том, что в окне браузера отрисовка происходит непосредственно после выполнения функции. Т.е. не удается добиться плавности мещения. Пытался в различных вариантах использовать подстановку задержки в цикле по пикселям: ID = window.setTimeout("Update();", 2000); - где Update() функция с простым оператором присваивания, но ничего не вышло - задержки нет, даже если вместо 2000 указать 10000. Пытался использовать такую функцию:
Задержка появляется, но выглядит это скорее как подвисание скрипта - плавности так же нет, просто отрисовка происходит позже, но опять же, перемещение изображений происходит сразу в конечную позицию. Вторую ночь борюсь с этим, пожалуйста ,помогите... -------------------- все вопросы - из-за неверной формулировки задачи |
||||||
|
|||||||
| Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Лучше положить картинки в
Выставляешь слоям ширину/высоту, двигаешь внутренний слой. Прокрутка всех картинок будет плавной. -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
| ayax2005 |
|
|||
|
echo $smile ![]() ![]() Профиль Группа: Участник Сообщений: 516 Регистрация: 17.4.2008 Где: Питер Репутация: 2 Всего: 11 |
В виде коде HTML я привёл только вызов функции - это сама кнопка, а не изображение, которое я хочу двигать.
Картинки организованы примерно таким способом (только position: relative, в силу определенных обстоятельств), как Вы предлагаете, но плавности нет. -------------------- все вопросы - из-за неверной формулировки задачи |
|||
|
||||
| ayax2005 |
|
|||
|
echo $smile ![]() ![]() Профиль Группа: Участник Сообщений: 516 Регистрация: 17.4.2008 Где: Питер Репутация: 2 Всего: 11 |
Я нашёл решение проблемы.
Если кому-то интересно: Таймер или Интервал не запускаются из функции, запущенной по событию. Уж почему, не знаю, видимо так организован стек JS. Тем не менее, для того, что бы добиться плавности, оказалось достаточным вставить вызов таймера непосредственно из события. -------------------- все вопросы - из-за неверной формулировки задачи |
|||
|
||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |