javascript: выбрать и перемешать
Доброе время суток, уважаемые.
Есть таблица, состоящая из некоторого количества div-ов, определенных одним классом. Как средствами javascript выбрать эти div-ы одного класса и перемешать между собой в хаотичном порядке? Заранее благодарю за внимание и ценные советы! |
Выбрать просто:
var divs = document.querySelectotAll('.class'); А вот на счёт перемешать - зависит от структуры. |
|
рони, всё так просто если эти div'ы в одном контейнере. Если же нет, то всё сложнее.)
|
Aetae,
неа тоже самое -- только создать массив с parentNode будет что то типа list[j].appendChild( elem_arr[ c[j] ] ) |
рони, неа. Дивы то в этих разных контейнерах ещё и в разных позициях могут находиться, а ещё они могут быть по парочке в одном месте.))
|
Aetae,
:write: <!DOCTYPE HTML> <html> <head> <title>Untitled</title> <style type="text/css"> .bar{ border: #FF3399 2px solid ; padding: 5px; } div { display: inline; } </style> </head> <body> <div class="foo">1</div> <div class="bar"><div class="foo">2</div> <div class="foo">3</div></div> <div class="bar"><div class="foo">4</div></div> <div class="foo">5</div> <input name="" type="button" value="go" onclick="go()"> <script> var divs = [].slice.call(document.querySelectorAll('.foo')), len = divs.length, elem = document.createElement("div"); function go() { for (var i = 0; i < len; i++) { var rand = Math.floor(Math.random() * len); divs[i].parentNode.replaceChild(elem, divs[i]); i != rand && divs[rand].parentNode.replaceChild(divs[i], divs[rand]); elem.parentNode.replaceChild(divs[rand], elem) } } </script> </body> </html> |
всем еще раз спасибо!, буду разбираться.
** div-ы определенного класса складывают таблицу, в которой и перемешиваются объекты... работает!) |
Часовой пояс GMT +3, время: 19:31. |