Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/449.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在css方法中传递动态属性_Javascript_Jquery_Css - Fatal编程技术网

Javascript 在css方法中传递动态属性

Javascript 在css方法中传递动态属性,javascript,jquery,css,Javascript,Jquery,Css,当我像下面这样做时,它不起作用!!你能帮帮我吗?为什么会这样 var propertyName = 'left'; var propertyVal = $("body").width(); $('nav').css({ propertyName: propertyVal , 'position': 'absolute'}); 相反,您可以这样做: $('nav').css(propertyName, propertyVal) .css('position', 'absolut

当我像下面这样做时,它不起作用!!你能帮帮我吗?为什么会这样

var propertyName = 'left';
var propertyVal = $("body").width();

$('nav').css({ propertyName: propertyVal , 'position': 'absolute'});

相反,您可以这样做:

$('nav').css(propertyName, propertyVal)
        .css('position', 'absolute');
您还可以使用
数组
符号添加:

cssProperties[propertyName] = propertyVal

问题在于,无法使用现有语法将变量用作对象中属性的名称。相反,您需要使用括号符号来定义该属性及其值。试试这个:

var cssSettings = { 'position': 'absolute' };
cssSettings[dynCssProperty] = widthMenu;
$('nav').css(cssSettings);
或者,您可以对
css()
方法进行两次调用,分别设置每个属性:

$('.nav').css('postion', 'absolute').css(dynCssProperty, widthMenu);

请添加更多信息和您的研究、假设、代码。让我们看看你做了什么。我们在这里帮助你学习,而不是免费软件支持。嗨@Praveen,你的方式完全正确。。但是,如果有许多动态属性需要在css方法下添加,那么这个解决方案将是冗长乏味的。。