jquery
  • css
  • background
  • slideshow
  • fade
  • 2010-08-02 76 views 1 likes 
    1

    我需要做一个CSS背景图像淡入淡出幻灯片。由于几个原因,我不能在我的HTML中有一个物理div。这是具有当前背景的称为“家”的类的身体。幻灯片将会有4张图片,不多不少,所以不必动态。手动背景div幻灯片

    我已经有以下的jQuery:

    <script type="text/javascript"> 
    $(document).ready(function() { 
        var original_image = '#000000 url(images/bg_home.jpg) top center no-repeat'; 
        var second_image = '#000000 url(images/bg_home2.jpg) top center no-repeat'; 
        var third_image = '#000000 url(images/bg_home3.jpg) top center no-repeat'; 
        var fourth_image = '#000000 url(images/bg_home4.jpg) top center no-repeat'; 
    
        $('.home').click(function() { 
         $(this).css('background', second_image); 
        }); 
    }); 
    </script> 
    

    所以,你看,这是一个非常简单的脚本,如果我点击一般-home-的div才有效。任何人都可以帮助我将这个变成一个简单的淡入淡出幻灯片没有任何点击?它应该刚刚开始执行淡入淡出幻灯片。

    非常感谢!

    回答

    1

    建议:

    $(function(){ 
        var images = [ 
         'bg_home.jpg', 
         'bg_home2.jpg', 
         'bg_home3.jpg', 
         'bg_home4.jpg' 
        ], 
        loop = 0, 
        $home = $('.home'); 
    
        (function fader(){ 
         $home 
         .fadeOut('fast', function(){ 
          $home.css('background', '#000000 url(' + images[loop] + ') top center no-repeat'); 
          $home.fadeIn('fast', function(){ 
           setTimeout(fader, 3000); 
          }); 
         }); 
    
         if(loop < images.length) 
          loop++; 
         else loop = 0;     
        })();   
    }); 
    
    +0

    非常感谢您!它确实有所作为,尽管不太正确。现在发生的事情是,载入图像显示大约一毫秒,变成黑色。然后'图像'(尽管是黑色)正在消失。 – Mathijs 2010-08-02 12:16:23

    +0

    @Mathijs:它应该工作,我在这里创建了一个例子:http://www.jsfiddle.net/Yjm89/ – jAndy 2010-08-02 12:32:20

    +0

    是的,的确,它的确行得通!我只需要微调一下。谢谢!只有一件事:中间有一张黑色图片,一张名为“未定义”的图片。 – Mathijs 2010-08-02 12:51:06

    相关问题