2013-08-07 110 views

回答

3

它的工作原理完全一樣,你把它寫:

$('html, body').stop().animate({ 
    'scrollTop': $target.offset().top - 140 
}, 600, 'swing', function() { 
    window.location.hash = target; 
}); 

第一部分動畫滾動,那就是完成時,你告訴窗戶跳到特定的哈希值。

注意發生了什麼,當你點擊功能只是有這樣的:

window.location.hash = target; 

刪除回調函數,它會阻止你的頁面跳轉到哈希值。


在一個不相干的筆記上,我建議您不要在動畫函數中使用硬編碼值。試試這個:

'scrollTop': $target.offset().top - $("#a").offset().top; 
+0

是的,它工作正常:http://jsfiddle.net/xMpu4/20/ – Nev

+0

生鏽 - 非常感謝 - 完全排序:-) – topiman