2014-01-11 44 views
0

在动画位置中渐渐消失,然后消失,所有时间都在同一时间内。我宁愿使用不透明,但淡入/淡出功能。谢谢。继承人JSFiddleJQuery在关闭动画时的位置然后关闭动画不透明度

$(document).ready(function() { 
    runIt(); 
}); 

function runIt() { 
    $('#ball').css({ 
     opacity: '0' 
    }).animate({ 
     opacity: '1', 
     left: '355' 
    }, 2000).animate({ 
     opacity: '0' 
    }, function() { 
     $('#ball').removeAttr('style'); 
     runIt(); 
    }); 
} 

JSFiddle

+0

你还没有指定你遇到的“麻烦” –

+0

寻找这个:http://jsfiddle.net/abhitalks/2vT6M/1/? – Abhitalks

+0

那个小提琴的例子是最好的,但我不想暂停。我想这也是我遇到的麻烦。 – seedy

回答

1

同时执行多个动画你必须调用dequeue()

function runIt() { 
    $('#ball').css({ 
     opacity : 0, 
     left : 0 
    }).animate({ 
     left: '355px' 
    }, 2000).animate({ 
     opacity: 1 
    },1000, function() { 
     $(this).animate({ 
      opacity: 0 
     },1000, runIt); 
    }).dequeue() 
} 

FIDDLE

2

这里的恒定变量连续区间的一个例子,你可以调整。

$(document).ready(function() { 
    runIt(); 
}); 

function runIt() { 
    var WIDTH = 350, 
     DURATION = 1000; 

    $('#ball') 
    .css({ opacity: '0', left: '0' }) 
    .animate({ opacity: '1', left: WIDTH/2 }, DURATION/2, 'linear') 
    .animate({ opacity: '0', left: WIDTH }, DURATION/2, 'linear', runIt); 
} 

小提琴:http://jsfiddle.net/2vT6M/6/

编辑:清理代码位。

+1

我真的很喜欢这个不错的工作。我可能会插入这个页面加载占位符的地方哈哈 – Deryck

+0

+ 1的编辑 – Abhitalks