как сделать, чтобы рандомно загружать картинки из папки
Имею 9 блоков, куда нужно чтобы при перезагрузке фоновым изображением не повторяясь загружались картинки из папки. Подскажите, как можно реализовать это?
<div class="game">
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
</div>
const block = document.querySelectorAll(".game div");
const imgCollection = [
"assets/img/1.png",
"assets/img/2.png",
"assets/img/3.png",
"assets/img/4.png",
"assets/img/5.png",
"assets/img/6.png",
"assets/img/7.png",
"assets/img/8.png",
"assets/img/9.png",
];
reset.addEventListener("click", () => {
location.reload();
block.style.backgroundImage = 'url(x)';
x = imgCollection[Math.floor(Math.random() * 9 + 1)];
});
Ответы (1 шт):
Автор решения: Алексей Шиманский
→ Ссылка
- Перемешать все элементы массива до его использования. Алгоритмов перемешивания много.
- Дальше просто брать элементы по порядку.