2011-05-09 17 views
6
<div style="left: 100%"></div> 

parseInt($("div").css("left"), 10); 

Cuando trato de obtener el valor left, algunos buscadores dan resultado en píxeles, algunos en%.problema parseInt% y px

Aquí es un ejemplo http://jsfiddle.net/WTt4s/1/

Google Chrome da valor porcentual, IE9 da lugar píxeles.

¿Cómo obtengo el mismo valor en todos los navegadores (px o%)?

+2

Ha comprobado el valor del texto del 'top'? ¿Todavía está en porcentaje o los navegadores lo convirtieron en píxeles? Si todavía está en porcentaje, ¿qué sucede si elimina el carácter '%' antes de hacer el análisis? - '$ (" div "). css (" top "). replace ('%', '')' – Spudley

+2

¿Cuál es el resultado de 'alert ($ (" div "). css (" top "))' en lugar del 'parseInt'? –

+0

no parece ser un problema parseInt pero comportamiento relacionado con el navegador – VirtualTroll

Respuesta

4

prueba este parseInt($("div")[0].style.top, 10)

+0

en IE 8 Tengo "90" con su jsFiddle - http://jsfiddle.net/WTt4s/2/ – DanielB

0

Intente utilizar .offset().top o .position().top lugar