2009-08-13 5 views
3

私はfirefoxで奇妙な問題に直面しています。私はID = "popup_layer"のDIVタグを持っています。 私は正常に動作します。このDIV見つけるためにjqueryのを使用しています:私はFirebugの中で、次の例外を取得DIVの位置()を見つける際にJquery Firefoxエラーが発生しました

var rightPosition=$j("#popup_layer").position().left; 

var rightPosition=$j("#popup_layer") 

をしかし、私はDIVの位置を見つけるしようとすると、

[例外... JavaScriptの引数arg 0 [nsIDOMViewCSS.getComputedStyle] "nsresult:" 0x80570009(NS_ERROR_XPC_BAD_CONVERT_JS) "の位置:" JSフレーム:: http://localhost:20094/Scripts/CombineJS.ashx?JSFiles=/Scripts/jquery-1.2.6.min.js;%20%20%20%20/Scripts/PDP/newModalBox.js;%20%20%20%20/Scripts/CookieHelpers.js;%20%20%20%20popupLayer.js;%20%20%20%20/BE/Scripts/scripts.js; :: anonymous :: line 23 "data:noを変換できませんでした。

0私は私のdivにスタイルを削除すると、いくつかの理由で

答えて

1

はそれが

<div id="popup_layer" style="display:none;"> 

<div id="popup_layer"> 

は完全に奇妙な仕事を開始します!

+0

ディスプレイの寸法または位置を取得することはできません:なしDOMエレメント。定義上、要素はページ上にレンダリングされているとは想定されていないため、スペースは必要ありません。 – andreialecu

+0

また、display:noneで要素が非表示になっている場合、要素の高さまたは幅を取得することはできません –

3

display:noneを使用してDOM要素の寸法または位置を取得することはできません。定義上、要素はページ上にレンダリングされているとは想定されていないため、スペースは必要ありません。

最初に要素を表示しておき、必要な寸法を取得してから測定を終えたら「display:none」を適用することをおすすめします。

代わりに "visibility:hidden"を使用することもできます。

関連する問題