2016-08-04 14 views
0

so versuche ich ein paar Divs Scrollen zu einer bestimmten Stelle in ihrem Inhalt, wenn der Benutzer scrollt. Hier ist meine aktuellen Code:jQuery Scroll-Ereignis kontinuierlich Brennen Scroll-Funktion

var target = 0; 
var main_scroll = 0;  
var top_scroll = 0; 
var bot_scroll = 0; 
var counter = 1; 

$('.main-container').on('scroll', function() { 
    if ($('#trigger-' + (counter + 1)).length && $(this).scrollTop() > target) {     
     main_scroll = main_scroll + $('.main-container').height();   
     $('.main-container').animate({    
      scrollTop: main_scroll    
     }, 1000); 

     top_scroll = top_scroll + $('.top-container').height();   
     $('.top-container').animate({    
      scrollTop: top_scroll    
     }, 1000); 

     bot_scroll = bot_scroll + $('.bottom-container').height();   
     $('.bottom-container').animate({     
      scrollTop: bot_scroll    
     }, 1000); 

     target = target + $('.main-container').height();    
     counter++;    
    } else if ($('#trigger-' + (counter - 1)).length && $(this).scrollTop() < target) { 
     main_scroll = main_scroll - $('.main-container').height();    
     $('.main-container').animate({    
      scrollTop: main_scroll    
     }, 1000); 

     top_scroll = top_scroll - $('.top-container').height();    
     $('.top-container').animate({    
      scrollTop: top_scroll    
     }, 1000); 

     bot_scroll = bot_scroll - $('.bottom-container').height();   
     $('.bottom-container').animate({     
      scrollTop: bot_scroll    
     }, 1000); 

     target = target - $('.main-container').height();    
     counter--;    
    }   
}); 

Wie steht es jetzt, wenn ich einmal die divs blättern ständig auf und ab hüpfen. Nicht 100% sicher, was ich falsch mache.

+0

Ein funktionierendes Beispiel würde hier sehr helfen, entweder in einem Schnipsel oder einem http://jsfiddle.net –

Antwort

0

war ich tatsächlich in der Lage, dies zu beheben, indem Sie:

if (! $(this).is(':animated')) { 

sicher zu stellen, dass das Scroll-Ereignis durch meine Animation nicht gefeuert wurde.

Verwandte Themen