Массив из html в jquery и вывод случайного элемента
Приветствую!
Возможно в названии изложил коряво тему. Есть кусок html:
<div id="elements">
<div id="container1">
text 1
</div>
<div id="container2">
text 2
</div>
<div id="container3">
text 3
</div>
</div>
Из него нужно сделать массив в jquery, и затем вывести из этого массива случайный какой-то один элемент. Пока только таким кодом собрал все эти дивы
<script type="text/javascript">
$('document').ready(function () {
var divs = $('#elements div');
});
</script>
|
|
var divs = $('#elements div'), div;
div = divs.eq(Math.floor(Math.random() * divs.length));
div - случайно выбранный элемент из divs; |
Спасибо за советы, но как теперь сделать массив уже в js из такого содержимого и вывести элемент рандомно?
<div id="elements">
<div id="container1">
text 1
</div>
<div id="container2">
text 2
</div>
<div id="container3">
text 3
</div>
</div>
|
Yon Yonson,
:blink:
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<style type="text/css">
#elements div{
display: none;
}
</style>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script>
$(function () {
var divs = $('#elements div'), div;
div = divs.eq(Math.floor(Math.random() * divs.length));
div.show()
});
</script>
</head>
<body>
<div id="elements">
<div id="container1">
text 1
</div>
<div id="container2">
text 2
</div>
<div id="container3">
text 3
</div>
</div>
</body>
</html>
|
Я собираюсь подключить скрипт этого ротатора к нескольким файлам шаблона у себя на сайте, т.к. меняться они будут часто, и чтобы не лазить каждый раз по всем файлам, то будет подключен отдельный js, который буду менять, я этого не учел изначально.
И в сообщении выше опять же криво пытался изложить. Т.е. у меня будет в файлах шаблона подключен скрипт и на странице будет див: <div id="banner"></div> А сам файл js такой:
$('document').ready(function () {
var arr = [
<div id="container1">
text 1
</div>,
<div id="container2">
text 2
</div>,
<div id="container2">
text 2
</div>
];
document.getElementById('banner').appendChild(
arr[Math.floor(Math.random() * arr.length)]
)
});
Я попытался составить схематично js файл, не принимайте всерьез. Заранее спасибо. |
Yon Yonson,
после ссылки во 2 посту -- все остальные сообщения лишние в данной теме, если вопросы всётаки есть тогда тудаже в разделе работа создайте тему и укажите цену. |
$(function() {
var banner = $('#banner'), divs = [], rand;
divs[0] = 'content 1';
divs[1] = 'content 2';
divs[2] = 'content 3';
rand = Math.floor(Math.random() * divs.length);
banner.html('<div id="container' + (rand + 1) + '">' + divs[rand] + '</div>');
});
|
| Часовой пояс GMT +3, время: 19:15. |