114 Stimmen

Erkennen, ob das Scroll-Ereignis vom Benutzer erzeugt wurde

Ist es möglich, festzustellen, ob ein Scroll-Ereignis vom Browser oder vom Benutzer ausgelöst wurde? Insbesondere bei Verwendung der Schaltfläche "Zurück" kann ein Browser zur letzten bekannten Bildlaufposition springen. Wenn ich an das Scroll-Ereignis binde, wie kann ich feststellen, ob dies vom Benutzer oder vom Browser verursacht wurde?

$(document).scroll( function(){ 
    //who did this?!
});

Es gibt drei Arten von Situationen, die einen Bildlauf in einem Browser verursachen.

  1. Der Benutzer führt eine Aktion aus. Er benutzt z. B. das Mausrad, die Pfeiltasten, die Tasten zum Hoch- und Runterblättern, die Home/End-Tasten, klickt auf die Bildlaufleiste oder zieht seinen Daumen.
  2. Der Browser blättert automatisch. Wenn Sie z. B. die Zurück-Taste Ihres Browsers betätigen, springt er automatisch an die letzte bekannte Bildlaufposition.
  3. Javascript scrollt. Zum Beispiel, element.scrollTo(x,y) .

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X