2014-10-19 58 views
0

我以前使用过这个代码来表达各种其他想法,但是我从来没有在动画之外做过淡入淡出,所以我希望图片在它们被改变时淡入淡出,这可能在这段代码中吗?或者我将不得不寻找另一种方法?你看到淡入淡出的地方就是我现在拥有它的地方,但淡入淡出似乎不起作用。我试着将时间与没有运气的间隔匹配。无法让背景图像淡入?

$(function() { // DOCUMENT ready shorthand 
    var cnt=0, bg; 
    var $body = $('body'); 
    var arr = ['images/01.jpg','images/02.jpg','images/03.jpg','images/04.jpg','images/05.jpg','images/06.jpg','images/07.jpg']; 

    var bgrotater = setInterval(function() { 
     if (cnt==7) cnt=0; 
     bg = 'url("' + arr[cnt] + '")'; 
     cnt++; 
     $body.css('background-image', bg).fadeIn('fast'); 
    }, 5000); 
}); 
+0

你想在''褪色,但它第一次淡入 – charlietfl 2014-10-19 13:56:30

+0

你怎么能淡入一些东西,已经可见后总是在你的代码可见..?或者你计划隐藏''本身..?! – 2014-10-19 14:05:21

+0

不,我想要一个淡入淡出的过渡效果的图像将出现未来 对不起,我吸了,我是新来的JavaScript仍然。 – 2014-10-19 21:30:40

回答

1

如果有人在将来会有这个问题,那么你要做的就是像CSS那样在CSS中添加转换。 另请注意它说过渡的部分。

body { 
font: 100%/1.4 Verdana, Arial, Helvetica, sans-serif; 
background-color: #666; 
background-image: url(images/01.jpg); 
background-size: 100% 150%; 
background-attachment:fixed; 
margin: 0; 
padding: 0; 
color: #FFF; 
transition: background 1.5s linear; 

}

+0

您还可以通过在body上添加一个div来模拟背景:'position:absolute; top:0px; bottom:0px; left:0px; right:0px; z-index:-1; background:url('yourbg。 PNG');'。然后你可以使用JQuery淡入淡出。 – GramThanos 2014-10-19 22:02:18

+0

是的,当我想起过渡效果的时候,我正要这样做。 但这样少用代码,所以我坚持这一个,但谢谢你的答案:D – 2014-10-19 22:03:37