2011-10-02 27 views
0

還有一個圖像(向下箭頭),當頁面到達某個點時,我想要動畫面朝上。我有一個滾動到底部的功能,但我不知道如何結束該功能。我很新的JavaScript,顯然不擅長它。如何使用JavaScript自動向下滾動,停止該功能,然後滾動到頂部onClick?

這裏是小提琴文件的鏈接:http://jsfiddle.net/thindjinn/LCYEp/embedded/result/

享受安德森·庫珀爲我的海報。我只是測試代碼。 :D

回答

2

在旁註:而不是setTimeout(),請使用setInterval()。它消除了遞歸函數的需要。

要停止滾動頁面,請撥打clearInterval()

+0

我不能確定這是否與否是正確的,只是因爲我不知道有足夠的瞭解JS。我將setTimeout更改爲setInterval,但我不確定接下來要做什麼。另外,我不知道如何調用clearInterval。 – Marlon

+0

'setInterval()'應該**替換**你的函數。 'var scrolling = setInterval(window.scrollBy(0,50),100);'開始滾動,'clearInterval(滾動);'停止。 – Dennis

0

試試這個:

http://jsfiddle.net/LCYEp/6/

我加了這一點:

window.pageScroll=function() { 
    window.scrollBy(0,50); 

    if(document.body.scrollHeight> 
     document.html.clientHeight+ 
     document.body.scrollTop){ 
     scrolldelay = setTimeout('pageScroll()',100);} 
} 

出於某種原因,我無法獲取文檔體的clientHeight工作的權利。

scrollHeight是可以滾動頁面的高度。 clientHeight是滾動區域的可見區域。 scrollTop是從可滾動區域的頂部滾動的距離。 如果scrollTop + clientHeight等於scrollHeight,那麼您已經滾動到底部。

請參見:

https://developer.mozilla.org/en/DOM/element.clientHeight https://developer.mozilla.org/en/DOM/element.scrollHeight https://developer.mozilla.org/en/DOM/element.scrollTop

+0

這只是讓我不得不點擊箭頭幾次才能到達底部。它跳躍而不是滾動。 :/我不太清楚究竟是什麼問題。 – Marlon

相關問題