2011-02-03 113 views
0

如何將頁面從當前位置下移100px?Jquery:從當前頁面向下滾動頁面100px

我的代碼無法正常工作:

$('html,body').animate({ 
     scrollTop: $(window).position().top + 100 
    }) 

這樣的,但是沒有它滾動頁面到一個特定的元素,相反,滾動從窗戶100px的當前位置:

$('html, body').animate({ 
scrollTop: $("#scrollToHere").offset().top 
}, 2000); 
+0

你可以*編輯*您的問題。請不要轉發他們。 – 2011-02-03 07:29:08

回答

0

的scrollTop屬性告訴你元素從頂部放置的位置。你必須使用window.scrollBy方法和window.scrollY屬性。不幸的是,你不能在window.scrollY屬性上使用動畫,因爲它是隻讀的。

你應該能夠使用這樣的事情:

function animateScrollBy (x, y) { 
var xpos = 0, 
    ypos = 0, 
    updateScroll = function() { 
     var moveX = xpos <= x ? 1 : 0, 
      moveY = ypos <= y ? 1 : 0; 

     window.scrollBy(moveX, moveY); 
     xpos += 1; 
        ypos += 1; 
     if (moveX === 0 && moveY === 0) { 
      clearInterval(scrollInterval); 
     } 

    }, 
    scrollInterval = null; 

scrollInterval = setInterval(updateScroll, 1) 
} 

animateScrollBy(0, 100); 

速度是初步認識到像素的大寫金額感動。我會盡量在稍後更新它。