CSS jquery Опера

S
На сайте с 11.03.2010
Offline
29
503

Добрый день, есть задача, загрузить страницу, а пототм плавно отобразить фон.

на странице есть <div id="bg"></div>

css:#bg {display:none; background:#fff url(splash.jpg) no-repeat 50% 0; }

скрипт:

$(document).onload.ready(function() {

$('#bg') .stop(true,true).fadeIn("1200");

// или так

$("#bg").animate({opacity: "show"}, 1200,function(){});

});

Везде работает, кроме оперы, в опере сначало появляется фон, а затем затухание и проявление.

Подскажите пожалуйста решение.

gormarket
На сайте с 29.12.2010
Offline
47
#1

Попробуйте сделать

css:#bg-android {display:none; .......}

(так же как у Вас сделано для css:#bg {....})

Товары и цены в магазинах Вашего города: Городской рынок (http://gormarket.ru/)
S
На сайте с 11.03.2010
Offline
29
#2

Прошу прощения, опечатался, я так и делаю, загвоздка именно в опере(

gormarket
На сайте с 29.12.2010
Offline
47
#3

Тогда уберите background из стилей, и назначайте его после начала анимации:

$('#bg').stop(true,true).fadeIn(1200).css({"background":"#fff url(splash.jpg) no-repeat 50% 0"});

и наверно нужно fadeIn(1200) а не fadeIn("1200")

S
На сайте с 11.03.2010
Offline
29
#4

Спасибо за внимание, решил проблему установкой начального значеничя прозрачности

css

#bg { background:#fff url(/bitmaps/splash_n.jpg) no-repeat 50% 0;

opacity:0.01; /* Для оперы*/

filter: progid: DXImageTransform.Microsoft.Alpha(opacity=1); /*для ie7*/

}

$("#bg").animate({opacity:1},1000);

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий