2012-09-05 11 views
28

Me gustaría saber qué tipo de método debo usar para obtener el valor del estilo CSS. Quiero configurarlo en jQuery para que pueda crear las condiciones para que coincidan con el valor CSS "left".cómo obtener el valor del estilo CSS usando jquery

Aquí está la etiqueta CSS y HTML con los atributos de estilo.

<div class="items" style="left: -900px"> <span>some content here</span> </div> 

Aquí está mi código jQuery para obtener el valor.

<script> 
    var n = $("items").css("left"); 
    if(n == -900){ 
    $(".items span").fadeOut("slow"); 
    } 
</script> 

Me gustaría saber si este método es correcto porque no está funcionando en mi extremo. Gracias de antemano por la poca ayuda.

Nota: a la izquierda el valor era dinámico, y que estaba cambiando a estos valores: -900px, -1800px, -2700px, -3600px, -4500px ...

+0

Do u quieren que el valor del atributo o la posición real? –

Respuesta

25

dudo css entiende left por sí mismo. Debe usarlo para especificar la posición. Está utilizando css() correctamente

position: relative/absolute/whatever; 
left: 900px; 

heres un violín de que funcione

http://jsfiddle.net/gFLZe/

y sin la posición que aquí está lo que se obtiene

http://jsfiddle.net/gkkm5/

Cambiar la si declaración para ser así - con citas alrededor de -900px

var n = $("items").css("left"); 

if(n == '-900px'){ 
    $(".items span").fadeOut("slow"); 
} 

http://jsfiddle.net/gFLZe/1/

+0

Sí, en realidad la posición en sí ya está codificada en el complemento que estoy usando ... aunque tengo que personalizar la salida para hacer que cada contenido tenga un aspecto visual diferente. – iMarkDesigns

+1

Entonces su código debería funcionar bien http://jsfiddle.net/gFLZe/1/ –

+0

@ user852916 Actualicé mi respuesta para solucionarlo –

0

Sí, tienes razón. Con el método css() puede recuperar el valor CSS deseado almacenado en el DOM. Puede leer más sobre esto en: http://api.jquery.com/css/

Pero si quiere obtener su posición, puede consultar los métodos offset() y position() para obtener su posición.

+0

No. Su error fue escribir "elementos", que es la búsqueda de los * tags * veces, en lugar de escribir ".items" que capturaría los elementos * de la clase *. Toda la diferencia radica en el punto. – pashute

3

Tu código es correcto. reemplazar elementos con .items como a continuación

<script> 
    var n = $(".items").css("left"); 
    if(n == -900){ 
    $(".items span").fadeOut("slow"); 
    } 
</script> 
Cuestiones relacionadas