2013-01-11 242 views
2

我想滾動瀏覽器窗口以響應某些用戶操作。使用jQuery滾動瀏覽器窗口

我找到了約scrollLeft in a stackoverflow response。從那裏,我能找到scrollTop,並結束了以下情況:

$(window).scrollTop((Number($(window).scrollTop())+100)+'px'); 

這確實事實上滾動,但到頁面的頂部。無論我用100取代什麼樣的價值(我甚至嘗試過負數),它總是跳轉到頁面的頂部。 (注:$(window).scrollTop()返回0.)

有人可以給我一些提示,我可能會錯過什麼嗎?

+0

如果您使用的是錨鏈接,你應該阻止事件的默認操作。 'event.preventDefault()'。 – undefined

+0

這是響應鼠標移動元素。 (它尚未實現,但完成後它將成爲定時器處理程序。) –

回答

3

scrollTop只需要一個號碼,而不是px值。

$(window).scrollTop($(window).scrollTop()+100); 

這應該夠了。

+0

是的!這解決了它。 「px」用於我在我的問題中引用的stackoverflow,我發現了'scrollleft'。 –

1

你不需要Number原因scrollTop返回一個數字

scrollTop如果有一些scrollHeight提供比元素的高度更高將執行,它總是一個正數。

,它應該是這樣的:

$(window).scrollTop($(window).scrollTop()+100); 

你不需要'px'

+0

因此代碼看起來正確嗎?這是另一個jsBin的bug嗎? –

+0

你做了什麼離線嘗試。只需將所有內容下載到本地計算機? –

+0

轉到jsBin - >下載 –

1

沒有px嘀......

$(document).ready(function(){ 
    $(window).scrollTop(($(window).scrollTop()+600)); 
}); 

Fiddle

+0

'Number'根本不需要,scrollTop返回一個整數 –

相關問題