2013-01-23 153 views
26

我想改變其使用該類的Web應用程序的餘生所有元素(從使用開始,直到用戶退出Web應用程序)一類的屬性一類的屬性會受到影響。jQuery的CSS:動態更改

HTML:

<p class="myClass"> 
    What? 
</p> 
<p class="myClass"> 
    Now? 
</p> 

CSS:

.myClass{ 
    background-color: #ffff00;  
} 

JS:

$(".myClass").css("background-color", "#00FFFF"); 
$("p").last().after("<div class='myClass'>Now!</div>"); 

Here is a sample

我想從樣品到實現的是,所有的後續動態地dded myClass將具有新的屬性。從的jsfiddle,你會看到,未來添加元素不具備的新特性。

更多:

我只是用顏色的基礎上,我將在更大範圍實現這一點,我想做到的是動態地改變將被用於類的屬性整個網絡應用程序的生命週期。

+1

它是如何工作的。 jQuery將只交替它可以看到的元素。您可以將顏色更改放入函數中並在需要時調用它,所以如果您決定更改某些內容 - 您只需編輯一個地方。 –

+0

很多重複:http://stackoverflow.com/search?q=[jquery]+change+css+rule。 –

+0

「整個網絡應用生命週期」下的含義是什麼? –

回答

20

使用CSS()方法的變化對已經存在的元素的內嵌樣式,你不能用它來改變未來元素的樣式。一種解決方法(我不很喜歡),將插入一個風格標籤:

$("<style>.myClass {background-color : #00FFFF}</style>").appendTo("head") 
$("p").last().after("<div class='myClass'>Now!</div>"); 

FIDDLE

+1

這接近我的問題,但我想要一個更清潔的,如果該答案存在。如果沒有,我會執行這個。 〜_〜 – Marl

+2

不清楚你是乾淨利落的意思,更多的jQuery's方式是'$('