Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Имеется проблемка с подменой фона (https://javascript.ru/forum/dom-window/33848-imeetsya-problemka-s-podmenojj-fona.html)

crime 11.12.2012 01:57

Имеется проблемка с плавной подменой картинок
 
[] Пробовал сделать что-то на подобие слайд бара. Всё получилось как и задумывал но одна вылезла проблемка...

Суть вот в чём:
1. Слайд бар(468х246) состоит из 4 псевдо слайдов
2. Подмена происходит не тривиальным методом(прошу не гнобить):
- в JS заменяю CSS class для изображения (468х246) блока сайдбара
- у этого блока установлено CSS свойство [transition: all(opasity) 0.4s linear;]
3. Всё работает плавно и красиво(FF,O,Ch кроме IE), ровно так, как и задумывалось, да не совсем...

Фитчей было сделать рандомную установку слайда при помощи JS. Ничего сложного, ставлю дефолтный(0) слайд, а в HTML коде сразу после слайдбару прикрутил код "выполняющий смену на указанный(в данном варианте случайный[1-4]) слайд"

Но при загрузке страницы сначала отображается дефолтный слайд, а следом за ~секунду меняется на установленный(рандомный). Похоже это "нормальное" поведение кода. Как это обойти всё ещё не придумаю никак ((

lord2kim 11.12.2012 09:57

crime, а код?

tropiko 11.12.2012 12:49

crime, могу предположить, что код, который меняет слайд рандомно, выполняется по событию DOM ready. Которое, естественно, возникает не сразу.

crime 11.12.2012 13:41

Цитата:

Сообщение от lord2kim
а код?

какой там код.. суть в одной функции
$('board_img_'+i).className = "";

я сегодня пришёл к тому, что даже еси убрать плавность и тупо менять картинки местами (opasity[0|1] или даже visibility(hidden) ) - то код JS ведь исполняется в одном типа потоке, тесть в моём случае у меня сначала отрисовывается дефолтная картинка ( на случай если JS отключён) а через доли секунды срабатывает JS и она заменяется на другую. но это всё равно очень заметно и не красиво

Цитата:

Сообщение от tropiko
могу предположить, что код, который меняет слайд рандомно, выполняется по событию DOM ready. Которое, естественно, возникает не сразу.

Нет, код расположен в потоке прямым вызовом (как там правильно - верхний уровень)

crime 11.12.2012 14:06

Всё наладил, всем спасибо.

PS: по мотивам http://css3.bradshawenterprises.com/cfimg/#cfimg7


Часовой пояс GMT +3, время: 06:31.