Wie kann ich scrollTo abbrechen, wenn sie ausgelöst wurde?
-
29-09-2019 - |
Frage
Ich möchte so etwas wie zu tun:
var scrollable;
scrollable = $(window).scrollTo(99999, 99999);
$(window).scroll(function() {
// cancel the scrollTo
scrollable = null;
});
Lösung 2
Nach einigen Hantieren ich diese gefunden gut zu funktionieren.
$(window).scrollTo(99999, 99999);
$(window).click(function() {
stopScroll();
});
if(window.addEventListener) document.addEventListener('DOMMouseScroll', stopScroll, false);
document.onmousewheel = stopScroll;
function stopScroll() {
$(window).stop(true, false); // Stops and dequeue's animations
}
Keine Notwendigkeit zu ändern Plugin oder Quelle!
Andere Tipps
Basierend auf jonobr1 Code Dies funktioniert für mich:
if(window.addEventListener) document.addEventListener('DOMMouseScroll', stopScroll, false);
document.onmousewheel = stopScroll;
function stopScroll() {
$(window)._scrollable().stop(true, false); // Stops and dequeue's animations
}
Ich habe einen Anruf zu stopScroll vor meiner scrollTo Anrufe in meine Event-Handler zu.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow