Question

Je suis face à un problème bizarre avec Firefox, j'ai une balise DIV avec ID = « popup_layer ». J'utilise Jquery pour trouver ce qui fonctionne très bien DIV:

var rightPosition=$j("#popup_layer")

Mais lorsque je tente de trouver la position de la DIV:

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

Je reçois l'exception suivante dans Firebug:

[Exception ... "Impossible de convertir l 'argument JavaScript arg 0 [nsIDOMViewCSS.getComputedStyle]" nsresult: "0x80570009 (NS_ERROR_XPC_BAD_CONVERT_JS)" emplacement: "cadre 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 ; :: anonyme :: ligne 23" données: no]

Était-ce utile?

La solution 2

Pour une raison quelconque quand je supprimer le style sur mon div il commence à travailler

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

Pour

<div id="popup_layer">

tout à fait bizarre!

Autres conseils

Vous ne pouvez pas récupérer les dimensions ou la position d'un élément DOM avec display:none. Par définition, l'élément n'est pas censé exister rendu sur la page, par conséquent, il ne prend pas l'espace.

Je suggère de laisser votre élément visible d'abord, obtenir les dimensions souhaitées, puis appliquer « display:none » après que vous avez terminé la mesurer.

Sinon, vous pouvez utiliser "visibility:hidden" à la place.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top