2016-04-25 16 views
0

Ich habe das folgende Skript, das eine Funktion beim Erreichen der Unterseite der Seite (mit einer 1px Schwelle, wie es scheint, nicht ohne diese) zu initialisieren. Es funktioniert gut, aber ich möchte, dass es nur funktioniert, wenn das erste Mal der untere Rand der Seite erreicht wird. Wenn ein Benutzer nach oben und unten scrollt, sollte nichts passieren.Feuer jquery beim Erreichen der Unterseite der Seite (nur einmal)

Irgendwelche Vorschläge?

JS

$(window).scroll(function() { 
    if($(window).scrollTop() + $(window).height() > ($(document).height() - 1)) { 
     // Function goes here 
    } 
}); 
+0

ein Flag gesetzt, und es ändern, nachdem die Funktion ausgelöst wird. – j08691

Antwort

2

einige Flagge für die Verwendung:

var hasScrolled = false; 

$(window).scroll(function() { 
    if(!hasScrolled && $(window).scrollTop() + $(window).height() > ($(document).height() - 1)) { 
     hasScrolled = true 
     // Function goes here 
    } 
}); 
1

eine weitere Variable hinzufügen, die Spur zu halten, wenn der Benutzer bereits gescrollt hat. `

scrolled = false; 
if($(window).scrollTop() + $(window).height() > ($(document).height() - 1) && !scrolled) { 
     // Function goes here 
    scrolled = true; 
} 
Verwandte Themen