2011-06-24 50 views
0

我在頁面上有一個約150像素的元素。這在不同的瀏覽器中是不同的,所以我想將頁面自動滾動到頁面下方大約150像素的頂部。我如何確定該元素相對於頁面頂部的位置?使用JQuery如何獲得頁面元素上方的垂直空間?

我想這個,但它不工作。 offset()返回null。

var positionOfLiveMapTop = $(mapElem).offset().top; 
+0

元素是否可見? – SLaks

+2

如果'.offset()'返回null,則該元素無法在頁面上找到,或者被隱藏。 –

回答

1
window.scrollTo(0, $(mapElem).offset().top); 

確保mapElem設置。你的問題很可能是它不是全球性的,並且在你正在使用它的上下文中未定義。

0

在DOM內容加載後你正在執行腳本嗎?

$(document).ready(function() { 

    var positionOfLiveMapTop = $(mapElem).offset().top; 

}); 
0

何塞, 除非你正在尋找與scrollTo()函數有關的動畫,這可以不通過JavaScript的錨ulitizing的書籤功能來實現的。

<a name="bookmark">Scroll to Here</a> 
<a href="#bookmark">From Here</a> 
相關問題