代码之家  ›  专栏  ›  技术社区  ›  Zeus

使用jQuery计时动画

  •  3
  • Zeus  · 技术社区  · 14 年前

    http://i28.tinypic.com/2j0zbxi.gif

    这可以通过jQuery实现吗?基本上如上图所示,我有蓝色背景,地图图像和文本图像。我想在页面加载或加载图像时实现这种动画。

    5 回复  |  直到 5 年前
        1
  •  4
  •   harkmylord    14 年前

    您将需要使用animate()和delay()的组合来为每张幻灯片计时。下面是一个我最近用这个拼凑起来的例子。

    http://www.panthersweat.com/thursday/

        2
  •  2
  •   Jaison Justus    14 年前

    代码如下

    var timerCount = 1;
    var timer = setInterval('sliderController()',5000);
    
    
    function sliderController() {
        status = changeSlide(timerCount);
        if(status == 1) {
            timerCount++;
        }
        else{
            timerCount = 1;
        }
    }
    
    function changeSlide(timerCount)    {
        if(timerCount != 3) {
            leftValue = -1004 * timerCount;
            $('#banner_slider_container #banner_slides_container').stop().animate({'left':leftValue,'opacity':0.3},'slow',function()    {
                $('#banner_slider_container #banner_slides_container').animate({'opacity':1},'slow');
            });
            return 1;
        }
        else    {
            leftValue = 0;
            $('#banner_slider_container #banner_slides_container').stop().animate({'left':leftValue,'opacity':0.3},'slow',function()    {
                $('#banner_slider_container #banner_slides_container').animate({'opacity':1},'slow');
            });
            return 0;
        }
    
    }
    

    我想这会帮助你。。。。。。。

        3
  •  1
  •   Joonas Trussmann    14 年前

    基本上这就是jQuery的.animate()的作用。你必须用CSS来表达每一个必要的动画状态/步骤,但是像上面这样的简单动画应该不是问题。

    http://api.jquery.com/animate/

        4
  •  1
  •   Peter Smeekens    14 年前

    因为1.4jquery有.delay()函数,你可以在动画中使用。也许这就是你需要的?