2013-02-07 38 views
1

比方說,我有一個名爲index.html的頁面。在文檔中,我有一個指向另一個頁面的錨點的鏈接。所以我們可以說:即使鏈接重定向到另一個頁面,jQuery滾動動畫也可以定位

<a href="page.html#anchor" class="scroll">Link</a> 

現在我有以下的jQuery腳本動畫滾動到同一文檔內的錨:

$(".scroll").click(function(event){  
    event.preventDefault(); 
    $('html,body').animate({scrollTop:$(this.hash).offset().top}, 500); 
}); 

但是這個作品,如果錨是在同一頁。我怎樣才能讓它工作到另一個頁面?當我點擊鏈接時,我希望它轉到其他頁面並滾動到錨點。

回答

3

你需要讓你的錨像

<a href="2nd.html#anchor_temp">Go</a> 

因爲你不能阻止瀏覽器

的默認滾動行爲當文檔準備好你需要看到的哈希標籤值從URL然後取出_temp,然後動畫它

$(document).ready(function(e){ 
    var str= location.hash; 
    var n=str.replace("_temp",""); 
    $('html,body').animate({scrollTop:$(n).offset().top}, 500); 
}); 

我希望這將有助於:)

+0

它沒有工作,它直接去了錨:x – coldpumpkin

+0

這個你可以在第二頁使用它 – Sedz

+0

是啊我把它放在第二頁 – coldpumpkin

相關問題