0

我将如何使用javascript将背景与具有相似属性的每个div的随机图像交替?(并非所有的 div 都应该是相同的图像,但如果图像池较小,可能会有重叠)

在我的情况下,我有多个具有相同属性的 div:

<div class="background" id="bgimg"></div>

我还有一个文件夹 (images/),其中包含 obj1.jpg、obj2.jpg ... obj5.jpg

到目前为止,我有一个 javascript 代码:

function bckg(){
            var images = ['obj1.jpg', 'obj2.jpg', 'obj3.jpg', 'obj4.jpg', 'obj5.jpg'];
            var div = document.querySelector('#bgimg');
            div.style.backgroundImage = 'url(images/' + images[Math.floor(Math.random() * images.length)] + ')';
            }

然而,并不是所有的 div 都以随机图像结束。而是只有第一个 div 显示随机图像。

我将如何让每个 div 都有一个随机图像?

先谢谢了。

4

1 回答 1

2

document.querySelector只选择第一项。( https://developer.mozilla.org/en-US/docs/Web/API/document.querySelector )

尝试document.querySelectorAllhttps://developer.mozilla.org/en-US/docs/Web/API/Document.querySelectorAll),然后遍历返回的每个项目。

此外,正如其他人所提到的,ID 应该是唯一的。如果你想拥有多个具有相同属性的 div,你应该使用匹配的类。

于 2013-06-10T20:14:21.380 回答