2011-06-24 1 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()関数に関連付けられているアニメーションを探している場合を除き、これはアンカーのブックマーク機能をulitizingことにより、javascriptをすることなく達成することができます。

<a name="bookmark">Scroll to Here</a> 
<a href="#bookmark">From Here</a>