2012-10-14 87 views
0

我想讓jquery在每次有人點擊導航按鈕時移動到頁面的頂部。goto #top

當某些按鈕點擊一個按鈕時,它隱藏舊內容並顯示新的內容,但它不會重置瀏覽器滾動位置,因此最終用戶會有點困惑。

所以我想添加一些window.location.hash JS命令來解決這個問題,但這隻在第一次執行時才起作用。

我的代碼:

 
$(document).ready(function(){ 
    $("#prac-btn").click(function() { 
     $('#myTab a[href="#prac-page"]').tab('show'); 
     window.location.hash = "#top"; 
    }); 
    $("#act-btn").click(function() { 
     $('#myTab a[href="#act-page"]').tab('show'); 
     window.location.hash = "#top"; 
    }); 
    $("#pro-btn").click(function() { 
     $('#myTab a[href="#pro-page"]').tab('show'); 
     window.location.hash = "#top"; 
    }); 
}); 
+0

嘗試用一個空鏈接href'#' – elclanrs

+0

它不起作用,因爲它已經是#top。你應該清除它並重新設置它。但是,使用.scrollTo是一種更好的做法,就像提到的暮色一樣。 – Pantelis

+0

我在發佈之後立即嘗試了明確的選項,但是它確實有效,但正如您所說的,最好使用.scollTo – Mint

回答

5

如果你要處理的滾動位置,只是這樣做的直接:

window.scrollTo(0); 
+0

,謝謝,這正是我所需要的。我做了一個谷歌移動到頂部或滾動到頂部,但沒有檢查的頂部結果有這個。 – Mint

0

你想scrollTop的:

$(window).animate({scrollTop:0}); 

這是JQuery的方法來做到這一點。