2013-01-14 52 views
-3

我不想手動做$(「#element」)。css('attr','val');因爲我有很多元素。以下說明我正在嘗試做什麼,但沒有正常工作。這是一個PHP文件,但PHP是無關緊要:使用jQuery應用批量CSS

<? 

    $css1 = " 
       #ele1 { border: 1 px solid blue; } 
       #ele2 { border: 1 px solid blue; } 
      "; 

    $css2 = " 
       #ele1 { border: 1 px solid black; } 
       #ele2 { border: 1 px solid black; } 
      "; 


?> 

<html> 
    <head> 
    <style id="appliedCss"></style> 
    </head> 
    <body> 
    ....... PAGE HERE ..... 
    <script> 
     $("#btn1").click(function (e) { 
      $("#appliedCss").html(<?=$css1?>); 
     }); 

     $("#btn2").click(function (e) { 
      $("#appliedCss").html(<?=$css2?>); 
     }); 
    </body> 
</html> 
+8

爲什麼不使用類?這正是他們想要的。 –

+0

你可以使用'text()'而不是'html()' – dmi3y

回答

1

試試這個

$('.more-than-one-element').css('name', 'value'); 

$('#element').css({ 
    'name1': 'value1', 
    'name2': 'value2', 
    ... 
}); 

或(但要小心這種方式,整個風格追加到HTML中的樣式屬性)

var cssText = $('#element').css('cssText'); 
cssText += 'name1: value1, name2, value2, ...'; 
$('#element').css('cssText', cssText);