2015-05-14 38 views
2

我试图做一个无限的JQuery动画,但是这样做,只做一个动画并停止....我尝试使用setTimeout来解决它,但它没有奏效。 你知道为什么吗?JQuery无限动画

<div class="row"> 
    <div id="homeAnimation"> 
     <div id="A">soins</div> 
     <div id="B">formation</div> 
     <div id="C">contact</div> 
    </div> 
</div> 

function anim(selector, firstDelay) { 
console.log(selector); 
$(selector).animate({ 
    'margin-left':'100%' 
}, 0).delay(firstDelay) 
.animate({ 
      'margin-left': '50%', 
      'transform: scale':'2' 
     }, 1000).delay(2000) 
     .animate({ 
      'margin-left': '-7%', 
      'transform: scale':'1' 
     }, 1000); 
     return; 
    } 
    setTimeout(anim("#homeAnimation #A", 0 * 8000), 10000); 
    setTimeout(anim("#homeAnimation #B", 1 * 8000), 10000); 
    setTimeout(anim("#homeAnimation #C", 2 * 8000), 10000);` 
+0

为什么不直接使用GIF? –

+0

我不太清楚当文本滚动时你想达到什么目的。但看看这个http://stackoverflow.com/questions/8080983/how-to-create-a-simple-settimeout-loop –

回答

0

我把它无限:

function anim(selector, firstDelay) { 
    console.log(selector); 
    $(selector).animate({ 
     'margin-left':'100%' 
    }, 0).delay(firstDelay) 
    .animate({ 
       'margin-left': '50%', 
       'transform: scale':'2' 
      }, 1000).delay(2000) 
      .animate({ 
       'margin-left': '-7%', 
       'transform: scale':'1' 
      }, 1000); 
      return; 
     } 
     setTimeout(anim("#homeAnimation #A", 0 * 8000), 100000); 
     setTimeout(anim("#homeAnimation #B", 1 * 8000), 100000); 
     setTimeout(anim("#homeAnimation #C", 2 * 8000), 100000); 
+0

对不起,它没有工作对我来说,改为100秒没有做任何事情,奇怪的是该函数只被调用一次 – miton18