Buongiorno a tutti!
Posto subito un codice di esempio per illustrare il problema che mi si presenta:
spuntando la checkbox modifico lo sfondo della casella di testo agendo sul css.codice:<html> <head> <script type="text/javascript" src="http://common.html.it/js/jquery.pack.js"></script> <script type="text/javascript"> var counter=0; $(function(){ $("#chkChangeColor").change(function(){ if($(this).is(":checked")) $(".lblDato").css('background-color','red') else $(".lblDato").css('background-color','yellow'); }); setInterval("aggiornaHtml()", 5000); }); function aggiornaHtml(){ $("#content").html('<input type="text" id="Dato" class="lblDato" value="' + (++counter) + '" />'); } </script> </head> <body> <style rel="stylesheet" type="text/css"> .lblDato{ color:blue; background-color:yellow; } </style> <p id="content"> <input type="text" id="Dato" class="lblDato" value="abcd" /> </p> sfondo rosso <input type="checkbox" id="chkChangeColor" /> </body> </html>
Quando la funzione aggiornaHtml sostituisce la casella di testo con una nuova, il colore di sfondo torna al default. Questo mi fa pensare che l'istruzione $(".lblDato").css('background-color','red') agisce sugli oggetti presenti nella pagina che hanno classe uguale a lblDato e non sulla classe stessa!
La domanda è:
esiste un modo per agire sui fogli di stile così che, creando un nuovo oggetto, questo prenda gli attributi della classe modificata?

Rispondi quotando
