Я пытаюсь создать своего рода коробку, которая предполагает отображение случайных div. Например, с забавными фактами о животных. Я нашел некоторый код, написал некоторые самостоятельно и это работает следующим образом: 1. случайный ДИВ загружается при загрузке страницы 2. Следующий случайные дивов загружаются пользователь каждый раз нажмите кнопку: «Случайные забавные факты»Коробка, которая отображает случайные divs
В приведенном ниже коде кнопка «Rundom fun fact» работает только один раз. Как я могу заставить его работать постоянно? Я имею в виду способ, которым я могу щелкнуть по нему 100 раз, и отобразит 100 различных div. И вот мой второй вопрос: при использовании, например, 100 div (есть много забавных фактов о животных), код ниже был бы очень длинным, есть ли более простой способ с каким-то созданием цикла? Есть тонны слайдеров, но я не мог найти ничего подобного. Любая помощь будет оценена по достоинству.
<div id="box">
<div id="funfact1">
<p>
Squirrels plant thousands of new trees each year simply by forgetting where they put their acorns. </p>
</div><!-- end funfact1 -->
<div id="funfact2">
<p>Macaques in Japan use coins to buy vending machine snacks. </p>
</div><!-- end funfact2 -->
<div id="funfact3">
<p>Japanese Macaques make snowballs for fun. </p>
</div><!-- end funfact3 -->
<div id="funfact4">
<p>Dogs’ nose prints are as unique as human fingerprints and can be used to identify them. </p>
</div><!--end funfact4 -->
<div id="buttonDiv">
<button id="buttonShuffle">Random fun fact</button>
</div><!-- end buttonDiv -->
</div><!-- end div box -->
<script type="text/javascript">
randomNumber = Math.floor(Math.random()*4+1);
window.onload = function() {
if (randomNumber == 1) {
document.getElementById("funfact1").style.display = "inline";
document.getElementById("funfact2").style.display = "none";
document.getElementById("funfact3").style.display = "none";
document.getElementById("funfact4").style.display = "none";
}
if (randomNumber == 2) {
document.getElementById("funfact1").style.display = "none";
document.getElementById("funfact2").style.display = "inline";
document.getElementById("funfact3").style.display = "none";
document.getElementById("funfact4").style.display = "none";
}
if (randomNumber == 3) {
document.getElementById("funfact1").style.display = "none";
document.getElementById("funfact2").style.display = "none";
document.getElementById("funfact3").style.display = "inline";
document.getElementById("funfact4").style.display = "none";
}
if (randomNumber == 4) {
document.getElementById("funfact1").style.display = "none";
document.getElementById("funfact2").style.display = "none";
document.getElementById("funfact3").style.display = "none";
document.getElementById("funfact4").style.display = "inline";
}
}
randomNumber1 = Math.floor(Math.random()*4+1);
document.getElementById("buttonShuffle").onclick=function() {
if (randomNumber1 == 1) {
document.getElementById("funfact1").style.display = "inline";
document.getElementById("funfact2").style.display = "none";
document.getElementById("funfact3").style.display = "none";
document.getElementById("funfact4").style.display = "none";
}
if (randomNumber1 == 2) {
document.getElementById("funfact1").style.display = "none";
document.getElementById("funfact2").style.display = "inline";
document.getElementById("funfact3").style.display = "none";
document.getElementById("funfact4").style.display = "none";
}
if (randomNumber1 == 3) {
document.getElementById("funfact1").style.display = "none";
document.getElementById("funfact2").style.display = "none";
document.getElementById("funfact3").style.display = "inline";
document.getElementById("funfact4").style.display = "none";
}
if (randomNumber1 == 4) {
document.getElementById("funfact1").style.display = "none";
document.getElementById("funfact2").style.display = "none";
document.getElementById("funfact3").style.display = "none";
document.getElementById("funfact4").style.display = "inline";
}
}
</script>
Благодарим вас за разъяснение. Я попробовал это раньше, используя массив, но не смог сделать это правильно. Теперь я вижу, как это должно было быть сделано. –
@YoungBuck Да. Вы можете принять ответ, если обнаружили, что он исправляет вашу проблему. Это может помочь другим. Благодарю. – binariedMe