2012-09-05 15 views
28

Mi piacerebbe sapere quale tipo di metodo dovrei usare per ottenere il valore dello stile CSS. Voglio impostarlo su jQuery in modo che possa creare le condizioni per corrispondere al valore "left" del CSS.come ottenere il valore dello stile css usando jquery

Ecco il tag CSS e HTML con gli attributi di stile.

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

Ecco il mio codice jQuery per ottenere il valore.

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

Mi piacerebbe sapere se questo metodo è corretto, perché non sta funzionando nel mio fine. Grazie in anticipo per il piccolo aiuto.

Nota: a sinistra il valore era dinamica, e stava cambiando a questi valori: -900px, -1800px, -2700px, -3600px, -4500px ...

+0

fare u vuole il valore dell'attributo, o la posizione attuale? –

risposta

25

Dubito css comprende left da sola. Devi usarlo specificando la posizione. Si utilizza css() in modo corretto

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

heres un violino di farlo funzionare

http://jsfiddle.net/gFLZe/

e senza la posizione qui è quello che si ottiene

http://jsfiddle.net/gkkm5/

Cambia il tuo caso dichiarazione per essere così - con quotazioni intorno a -900px

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

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

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

+0

Sì, in realtà la posizione stessa è già codificata nel plugin che sto usando .. anche se devo personalizzare l'output per rendere ogni contenuto diverso. – iMarkDesigns

+1

Quindi il tuo codice dovrebbe funzionare bene http://jsfiddle.net/gFLZe/1/ –

+0

@ user852916 Ho aggiornato la mia risposta per risolverlo per te –

0

Sì, hai ragione. Con il metodo css() è possibile recuperare il valore css desiderato memorizzato nel DOM. Si può leggere di più su questo a: http://api.jquery.com/css/

Ma se si vuole ottenere la sua posizione è possibile controllare offset() e position() metodi per ottenere la sua posizione.

+0

No. Il suo errore era scrivere "items", che sta cercando il * tag * volte, invece di scrivere ".items" che catturerebbe gli elementi * della classe *. Tutta la differenza sta nel punto. – pashute

3

Il codice è corretto. sostituire oggetti con .items come sotto

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