2016-05-18 25 views
0

Ich versuche zu finden, wenn es eine Lösung im Zusammenhang mit dem Blättern der Seite wie Fullpage.js tut. Scrollen einer Website Seite für Seite, nach unten und oben.JavaScript scrollen Seite ohne Anker

Dies ist anders als fullpage.js, wie es die Seite zu einem anderen div verschiebt, aber ich brauche es in einem einzigen div verschieben.

Hier ist der Code, den ich versucht:

<div> a very long text here..... </div> 

Window.onscroll = function() {test()}; 

Function test(){ window.scrollby(0, 300) }; 

Der obige Code nur scrollt nach unten und es hört nicht auf. Es scrollt den ganzen Weg bis zum Ende der Seite.

Also, wie?

+0

> Dies unterscheidet sich von fullpage.js, wie es um die Seite zu verschiedenen einem div gleitet, aber ich brauche es in einem Zug div. Sie müssen sich innerhalb eines div bewegen? Ok, wie viel? – zer00ne

+0

Das Problem ist das Starten einer unendlichen rekursiven Schleife. Hier ist, was passiert, wenn Sie scrollen (oder hoch) windows.onscroll ruft Test. Test sagt dem Browser, um 300 Pixel nach unten scrollen ... aber wenn Test den Browser zu scrollen, löst es windows.onscroll, die Test erneut aufruft, und seit Test noch einmal sagen, es nach unten scrollen, es auslösen windows.onscroll, die Anruf Test wieder tut es das für immer. –

+0

Oh. Ja. Ich sah es. Also, wie werde ich das machen? Ich benutze fullpage.js vorher, Sie können hier jommarketing.com/mbjb1/page.php überprüfen. Sie können sehen, dass die Wörter in anderen div sind. Wenn also die Höhe und Breite meines Geräts größer ist, sieht die Seite wie leer aus. –

Antwort

0

Sie etwas brauchen, die Endlosschleife zu stoppen, versuchen Sie dies ...

<div> a very long text here..... </div> 

Window.onscroll = function() {test()}; 
var isAutoScroll = false; 
Function test(){ 
if(!isAutoScroll){ 
    isAutoScroll = true;//Next time will not scroll 
    window.scrollby(0, 300) }; 
} 
else 
{ 
    isAutoScroll = false; 
    return; 
} 
+0

Hallo Herr. Ich lese darüber, aber es ist für Klick-Funktion. Ich suche nach Scroll-Funktion –

+0

Setzen Sie einfach dies in eine Funktion, und rufen Sie es von wo immer Sie wollen, wird es scrollen, egal ob es von einem Klick oder nicht .. –

+0

Sorry, Sir, ich verstehe es immer noch nicht. Ich habe Code in meine Funktion eingefügt, was er tut, ist das Scrollen von selbst auf 600 px, wenn ich die Seite aktualisiere, und deren Stopp. Und wenn ich mit der Maus blättern gehe, geht es nicht weiter auf 600 px. Hoffentlich bekommst du was ich meine. Sie können meinen Simulator unter jommarketing.com/mbjb1/page.php überprüfen. –

Verwandte Themen