我想使用jQuery css()函数动态设置div元素的css,而不是使用css()函数的字符串文字/字符串常量.可能吗?
$('#myDiv').css('color','#00ff00');
我想使用变量为#myDiv元素设置css
版本1:
var propertyName = get_propery_name(myVariable1); // function get_propery_name() returns a string like 'background-color'
var value = get_value(myVariable2) ; // function get_value() returns a string like '#00ff00'
$('#myDiv').css(propertyName,value);
版本2 :(只需硬编码,看看它们是否可以在不调用上述版本1的自定义函数的情况下工作):
var propertyName = 'background-color';
var value = '#00ff00';
$('#divLeftReportView').css(propertyName,value);
两个变量版本的代码都不起作用.请帮忙.谢谢.
最佳答案
你的两个例子都可以正常工作.我建议只是一个更清洁的方法(个人语法首选项):
$(document).ready(function () {
$('#myDiv').css(get_propery_name(myVariable1),get_value(myVariable2));
}
如果你想更进一步,你可以返回CSS地图而不是字符串:
$('#divLeftReportView').css(GetCssMap("foo"));
function GetCssMap(mapIdentifier) {
return { "background-color" : "#00ff00" }
}