我已经看到很多线程询问如何将变量用于jquery&#css方法,如
var black='#000000';
$(this).css({'color':black});
但没有一个如何使用变量反过来像
var bg='background-color';
$(this).css({bg:'#000000'});
对我而言,它并不像那样工作,所以我想,是否有办法制作类似工作的东西,以便在使用背景颜色时节省一些空间'在剧本中多次?
谢谢!
答案 0 :(得分:3)
如果它是单个属性,你可以用这种方式写
var bg = 'background-color';
$(this).css(bg, '#000000');
如果你需要传递一个对象,你可以将background-color
键定义为方括号内的变量
var bg = 'background-color';
var obj = {};
obj[bg] = '#000000';
$(this).css(obj);
答案 1 :(得分:2)
使用bracket
表示法将变量用作对象的key
var obj = {};
var bg = 'background-color';
var black = '#000000';
obj[bg] = black;
$('div').css(obj)

div {
color: white;
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<div>Hello</div>
&#13;
答案 2 :(得分:1)
只需使用带有样式名称和参数
的.css(propertyName, value)版本
$('div').each(function() {
var bg = 'background-color';
$(this).css(bg, '#000000');
})
&#13;
div {
margin-bottom: 5px;
color: white;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>some</div>
<div>test</div>
&#13;