有没有办法在js中设置单个数组元素的样式

时间:2015-08-24 07:43:33

标签: javascript css arrays styling

我目前正在开发一款记忆游戏,我在游戏板上填充了通过var memory_array = ['A', 'A', 'B', 'B', 'C', 'C', 'D', 'D', 'E', 'E', 'F', 'F', 'G', 'G', 'H', 'H']; 创建的div。我正在尝试将图像添加到我的数组值。 这是我的阵列:

memory_array[0].style.background-image

我想在每对上附加一张图片,以使我的项目更有趣。我正在尝试 @Html.Labelfor它正在破坏我的项目。任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:0)

它是.backgroundImage,但是您的数组由char值组成,它们没有属性style。要调用.style,您必须获取DOM元素,f.e。使用document.getElementByIddocument.getElementsByClassName。我建议给他们分类名称(.className)并在css中设置图片,而不是直接使用.style.backgroundImage

答案 1 :(得分:-1)

它不起作用的原因是因为你的数组元素是字符串而不是对象。一个简单的解决方案是使您的阵列像这样:

var memory_array = [{name:'A'}, {name:'B'}, ...];

现在,在致电memory_array[0].style-background-image:"SomeImage"之后;你的第一个元素将成为:

{name: 'A',
 style-background-image: "SomeImage"
}

请注意,会直接更改任何样式。在构建DOM元素时,您必须调用属性style.backgroundImage并将其应用于每个元素