变量属性jQuery

Variable property jQuery

本文关键字:jQuery 属性 变量      更新时间:2023-09-26

我需要为div的未知属性设置样式。

var property = 'width';
$('#div').css({[property]: '100px'});

我以为支架会起作用,但没有这样的运气。有人知道吗?

谢谢!

jsFiddle Demo

你可以创建一个新的函数对象。

var property = 'width';
$('#div').css(new function(){this[property] = '100px'});

您尝试使用的语法属于即将推出的ECMAScript6。括号表示法用于计算属性名称,该功能称为"计算属性名称"。

var identifier = 'Identifier';
{ ['an' + identifer]: 'value' } // { anIdentifier: 'value' }
{ [identifier.toUpperCase()]: 'value' } // { IDENTIFIER: 'value' }

目前只有Firefox 34+支持此功能。目前广泛使用的ES5不支持它。你可以编码:

var property = 'width';
var styles = {};
styles[property] = '100px';
$('#div').css(styles);
$('#div').css(property, value);

在上面的例子中,property应该是一个字符串。