2010-07-18 8 views

risposta

9
$('p').css('background-color', 'black') 

se avete bisogno di maggiore flessibilità:

$('p').each(function() { 
    $(this).css('background-color', 'red'); 
}); 
+0

Grazie, funziona! – Pieter

5

È possibile utilizzare .each() per iterare attraverso gli elementi corrispondenti, in questo modo:

$("p").each(function() { 
    alert($(this).css("background-color")); 
}); 

Se si vuole impostare o fare qualcosa (ad esempio, non ottenere un valore da ciascun come sopra), non c'è alcuna necessità di .each(), basta eseguirlo e sarà eseguito per ogni elemento sul set ... questo è il comportamento di default jQuery, ad esempio:

$("p").show(); //shows all <p> elements 
0

Il metodo each suona come quello che si vuole

$('p').each(function() { 
    alert($(this).css('backgroundColor')); 
} 
+2

Per inciso qui, 'backgroundColor' c'è da usare come una proprietà, come' {backgroundColor: 'rosso', color: 'verde'} ', ma quando si utilizza una stringa non c'è bisogno di usare nulla, ma la sintassi standard (più facile da trovare anche quando si esegue il debug). 'BackgroundColor' si trasforma di nuovo a' background-color' sotto le coperte quando viene eseguito, non c'è bisogno di convertirlo qui solo per creare lavoro in più :) –

+0

Ah, bello, grazie per questo Nick. Lo uso per forza di abitudine. Deve essere il momento di rompere quell'abitudine :-) –

Problemi correlati