Отображение случайного div с javascript

63
9

Поэтому я хочу показать случайные divs, и я нашел это решение stackoverflow здесь: Отображение случайных divs с использованием JQuery

И правильный ответ использует этот код: http://jsfiddle.net/nick_craver/RJMhT/

Поэтому я хочу сделать выше, но для жизни меня не знаю, как.

Я думал, что это будет так просто, как

<html>
<head>
<script type="text/javascript">
var divs = $("div.Image").get().sort(function() {
return Math.round(Math.random())-0.5; //random so we get the right +/- combo
}).slice(0,4)
$(divs).appendTo(divs[0].parentNode).show();​​
</script>
<style type="text/css">
div.Image {
display: none;
}​
</style>
</head>
<body>
<div class="Image"><img src="/image1.jpg">1</div>
<div class="Image"><img src="/image2.jpg">2</div>
<div class="Image"><img src="/image3.jpg">3</div>
<div class="Image"><img src="/image4.jpg">4</div>
<div class="Image"><img src="/image5.jpg">5</div>
<div class="Image"><img src="/image6.jpg">6</div>
<div class="Image"><img src="/image7.jpg">7</div>​
</body>
</html>

Но, видимо, нет, так как на экране ничего не отображается. Может кто-нибудь мне помочь? Должно быть действительно очень легко для тех, кто, как мне кажется, знает немного о javascript.

Благодарю тебя!

спросил(а) 2021-01-28T01:02:06+03:00 3 месяца, 1 неделя назад
1
Решение
98

Вы запускаете скрипт до того, как код HTML для тела страницы был проанализирован, поэтому элементов еще не существует.

Поместите свой код в ready событие страницы:

$(document).ready(function(){
// your Javascript code goes here
});

Также вам не хватает включить библиотеку jQuery, как показал Коннер.

ответил(а) 2021-01-28T01:02:06+03:00 3 месяца, 1 неделя назад
76

Вам нужно импортировать библиотеку jQuery.

Добавить


<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>

к вашим тегам <head> перед вашим кодом javascript.

ответил(а) 2021-01-28T01:02:06+03:00 3 месяца, 1 неделя назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема