2009-05-03 11 views
1

Ich mag mit etwas implementieren, wie diese Seite funktioniert: linkjQuery Doppel Animation des jQuery-Plugin Lockerung

Blick auf der Clicker-Box. Die Box hat zwei Animationen. Eine für die easeInQuad, dann die andere Animation für die easeInOutSine.

Wie kann ich sowas in meiner eigenen Funktion implementieren?

$(function() 
{ 
    var iH = window.innerHeight + 80; 
    var position = $(window).scrollTop(); 

    $(window).scroll(function() 
    { 
     var scroll = $(window).scrollTop(); 

     if(scroll > position) 
     { 
      $("body").animate(
      { 
       scrollTop: iH 
      },1000, 
      "easeInOutQuart") 
      .animate(
      { 
       scrollTop: parseInt($(window).scrollTop()) - 80 
      },1000, 
      "easeInOutQuart"); 
     } 
     else if(scroll < position) 
     { 
      $("body").get(0).scrollTop = 0; 
     } 

     position = $(window).scrollTop(); 
    }); 
}); 

Das zweite Animat funktioniert nicht ganz gut. Aber es scroll es auf. Aber es scrollen es zu viel nicht nur 80 Pixel. Es scrollen Sie nach oben, dann wird die Animation in eine Endlosschleife. Nach der zweiten Animation wird es weiter und immer wieder animiert. Nicht aufhören.

Antwort

0

$ zu verwenden ("body"). Stoppen (true)

Dadurch werden alle Animation Warteschlangen auf das Objekt löschen.