2014-02-12 37 views
-1

這個問題在過去的幾個小時裏一直令我瘋狂。 我有一個單頁的網站設計。錨鏈接在頁面本身上工作得很好。HTML Anchor Points - 錯誤的位置

但我有第二個頁面,將作爲博客部分。

當我嘗試從這裏使用錨點鏈接到索引頁上的段時,它們的位置不正確。

請參閱主頁: www.redcedarstudios.ca/themes/Haze/index.html

,然後嘗試點擊導航鏈接回從博客頁面: http://www.redcedarstudios.ca/themes/Haze/post.html

的定位是完全不正常的。

任何幫助或想法,非常感謝。

感謝 約翰

+0

我不明白,你可以更具體。什麼是重擊?似乎爲我工作。 – gfrobenius

+0

是的,我剛剛意識到,這隻發生在Firefox。我敢打賭你正在運行一個不同的瀏覽器,我是否正確? – CreativelyCoded

回答

2

於是我找到了解決。 我添加了一個$(窗口).load功能,將來自URL讀取散列標籤,然後滾動到onloading:

$(window).load(function() { 
var hash = window.location.hash; 
$(document).scrollTop($(hash).offset().top); 
}); 
1

如果你不能得到上述工作試試這個:

<script> 
    $(window).load(function() { 
     var hash = window.location.hash; 
     console.log(hash); 
     $('html, body').animate({ 
     scrollTop: $(hash).offset().top 
    }, 2000); 
     console.log("page loaded"); 
    }); 
</script> 

它實際上會動畫到正確的div,如果它沒有登陸它,它應該是因爲需要加載的資產。如果你想刪除的動畫,我不能讓上面的代碼本身的工作,但我在這裏用我的例子結合上面的例子:

<script> 
     $(window).load(function() { 
      var hash = window.location.hash; 
      console.log(hash); 

      $(document).scrollTop($(hash).offset().top); 

      $('html, body').animate({ 
      scrollTop: $(hash).offset().top 
     }, 2000); 
      console.log("page loaded"); 
     }); 
</script>