2010-02-16 216 views
23

有沒有一種方法來編程滾動到頁面的頂部與jQuery?我目前正試圖用下面的代碼來做到這一點,但它不工作。我使用的是Firefox目前,JQuery滾動到頁面頂部

$(window).scrollTop($(document).height()); 

回答

54

試試這個:

$('html, body').animate({scrollTop: '0px'}, 300); 

爲此,您可以用0而不是300是即時的,但這樣就可以快速自動滾動效果。

+0

我想jQueryUI的對話框控件滾動到在發射前,這正是我一直在尋找。謝謝。 – 2012-02-15 08:25:14

3

只需添加一個片段給尼克的很好的答案。這僅在用戶向下滾動頁面(即,Pinterest風格)之後才顯示「滾動到頂部」元素。

$("#scroll_to_top_button").hide(); // hide on page load 

    $(window).bind('scroll', function(){ 
    if($(this).scrollTop() > 200) { // show after 200 px of user scrolling 
     $("#scroll_to_top").slideDown("fast"); 
    } 
    }); 
3

這裏不需要jQuery。使用原生:

window.scrollTo(x-coordinate, y-coordinate);

注意,這已超過動畫部分(持續時間等)jQuery提供

0
$('a[href^="#"]').on('click', function(event) { 

var target = $(this.getAttribute('href')); 

if(target.length) { 
    event.preventDefault(); 
    $('html, body').stop().animate({ 
     scrollTop: target.offset().top 
    }, 1000); 
} 

})無法控制的;

一下添加到HTML

<div id="top"></div> 
<a href="#top">Click to scroll up</a>