2014-11-04 45 views
2

我有一個使用存儲在變量中的CSS樣式進行樣式化的div。 像這樣:JQuery應用存儲在變量中的css

var styles = 'font-weight","bold"'; 
 

 
$('div').css(styles);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<div>The Div to be styled</div>

這說明什麼,我想這樣做,但它不會工作。有沒有人有任何想法。 謝謝。

+0

'的.css({fontWeight設置: '大膽'})'? – andlrc 2014-11-04 13:15:31

+2

爲什麼不使用任何CSS規則使用類和設置樣式?這是如何應該做的IMho – 2014-11-04 13:17:56

+0

相關:[jQuery的css()不工作的字符串](http://stackoverflow.com/questions/18082279/jquery-css-is-not-working-with-a-字符串) – undefined 2014-11-04 13:19:27

回答

10

嘗試,

var styles = {'font-weight':'bold'}; 
$('div').css(styles); 

在你的代碼是通過一個單一的string參數的.css()功能。這不是.css()設置樣式值時支持的有效簽名。

var styles = {'font-weight':'bold'}; 
 
$('div').css(styles);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<div>The Div to be styled</div>

+1

列出的第一種方法似乎工作:) – StorySystems 2014-11-04 13:19:33

+0

@StorySystems,你應該接受答案 – 2014-11-04 17:29:42

1

的.css要求無論是對兩個字符串(RuleName中和值)或名稱/值對的對象,如果你嘗試設置的規則。如果您只交付一個字符串,它會嘗試返回匹配名稱(在您的情況下不存在)的規則的值。

試試這個:

var styles = {'font-weight': "bold"}; 

$('div').css(styles); 

工作小提琴:http://jsfiddle.net/ocgb77m8/