So erstellen Sie einen scrollbaren Div-Scroll beim Klicken und Mouseover mit jQuery

7

Mit dem unten stehenden Markup würde ich das "#content" -Div dazu bringen, nach oben oder unten zu scrollen, wenn ich auf das Anchor-Tag "#scrollUp" oder "#scrollDown" klicke oder den Mauszeiger darüber bewege. Scrollen sollte vorzugsweise glatt sein. Wenn sie angeklickt wird, sollte sie einen bestimmten Betrag scrollen (für Touch-Geräte), wenn der Mauszeiger darüber bewegt werden kann bis zum Mouse-Out.

%Vor%     
sevens 31.12.2010, 19:08
quelle

2 Antworten

32

Sie können die Funktion animate von jQuery verwenden, um einen reibungslosen Scroll-Effekt für click oder mouseover zu erzielen:

%Vor%

Arbeitsbeispiel: Ссылка

(Sie müssen die Ereignisse mouseover und mouseout deaktivieren, um die Auswirkungen des Ereignishandlers click richtig zu sehen)

Wie es funktioniert:

  • Verwendet die oben genannte Funktion animate , um bei einem Klick einen reibungslosen Bildlauf um einen bestimmten Betrag zu ermöglichen.
  • Verwendet ein Flag, um kontinuierliches Scrollen zu aktivieren, wenn der mouseover -Ereignishandler der Verbindung aufgerufen wird, und deaktiviert das Scrollen beim mouseout -Ereignishandler der Verbindung.
  • Wenn scrollContent aufgerufen wird, wenn das scrolling -Flag immer noch true ist, nachdem die Animation abgeschlossen ist, animiere erneut in die gleiche Richtung. Der Rückruffunktionsparameter von animate ermöglicht es uns, eine Aktion auszuführen, nachdem die Animation abgeschlossen wurde.
Andrew Whitaker 31.12.2010, 20:04
quelle
0

Verwenden Sie JavaScript anstelle von jQuery für diese Aufgabe. Google die Funktion scrollBy() wie in window.scrollBy()

    
BenG 31.12.2010 19:17
quelle

Tags und Links