• Страница 1 из 1
  • 1
Модератор форума: JonMagon  
Скрипт "сортировки" элементов.
KaiLee
Сообщений: 5463
Репутация: 1135

Сообщение # 1 | 07:50:56
Есть задача: разделить однотипные элементы в блоке на 2 класса через один, т.е. "на первый-второй рассчитайсь".
Как вариант - подойдет и просто навешивание порядкового номера.

После некоторого головоломания получила следующее:
Код
<script type="text/javascript">  
$(document).ready(function(){
var a = document.getElementById('Menu'), b = a.innerHTML.split('li'), i = b.length, x = 0;
while(--i){x=x+1; b[i] = 'li class="Num' + x + '"' + b[i];}
a.innerHTML = b.join('');
});
</script>
Скрипт работает почти как надо... За одним НО: порядковый номер в NumX получается не совсем порядковым.
Есть ли возможность как-то это исправить или, может, есть более язящные решения?

В ЛС - только адреса и пароли. Все остальное - на форуме.
Студия | Шаблоны | Статьи
bandjuk
Сообщений: 6816
Репутация: 2398
Уровень замечаний:

Сообщение # 2 | 09:47:19
KaiLee, это не оно?
http://jquery.page2page.ru/index.php5/Четные_элементы

С добавлением ид так:
Сообщение отредактировал bandjuk - Среда, 10 Июл 2013, 10:23:00
KaiLee
Сообщений: 5463
Репутация: 1135

Сообщение # 3 | 11:14:12
bandjuk,
Нет, не то. Мне-то и нужно порядковый номер блокам присвоить..

В ЛС - только адреса и пароли. Все остальное - на форуме.
Студия | Шаблоны | Статьи
bandjuk
Сообщений: 6816
Репутация: 2398
Уровень замечаний:

Сообщение # 4 | 11:20:33
Цитата (KaiLee)
разделить однотипные элементы в блоке на 2 класса через один, т.е. "на первый-второй рассчитайсь"

это как бэ оно и есть
Цитата (KaiLee)
Нет, не то. Мне-то и нужно порядковый номер блокам присвоить..

тогда поясни.
KaiLee
Сообщений: 5463
Репутация: 1135

Сообщение # 5 | 11:27:31
bandjuk,
У меня есть некоторая структура, допустим такая:
Код
<ul>
<li><a href="#">Ссылк</a></li>
<li><a href="#">Ссылк</a></li>
<li><a href="#">Ссылк</a></li>
<li>Ссылк</li>
<li><a href="#">Ссылк</a></li>
<li><a href="#">Ссылк</a></li>
</ul>
Мне нужно скриптом, т.е. автоматически сделать из него такую (это в идеале):
Код
<ul>
<li class="black"><a href="#">Ссылк</a></li>
<li class="white"><a href="#">Ссылк</a></li>
<li class="black"><a href="#">Ссылк</a></li>
<li class="white">Ссылк</li>
<li class="black"><a href="#">Ссылк</a></li>
<li class="white"><a href="#">Ссылк</a></li>
</ul>
Как вариант, пройдет и такое:
Код
<ul>
<li class="Num1"><a href="#">Ссылк</a></li>
<li class="Num2"><a href="#">Ссылк</a></li>
<li class="Num3"><a href="#">Ссылк</a></li>
<li class="Num4">Ссылк</li>
<li class="Num5"><a href="#">Ссылк</a></li>
<li class="Num6"><a href="#">Ссылк</a></li>
</ul>

Скрипт должен найти в блоке [ul] все [li], заменить каждую первую [li] на [li class="black"], а каждую вторую - на [li class="white"]/ Вот как-то так...

В ЛС - только адреса и пароли. Все остальное - на форуме.
Студия | Шаблоны | Статьи
Сообщение отредактировал KaiLee - Среда, 10 Июл 2013, 11:29:53
bandjuk
Сообщений: 6816
Репутация: 2398
Уровень замечаний:

Сообщение # 6 | 11:43:33
KaiLee, от чес слово, то ли лыжи не едут, то ли я .....
код:
Цитата
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="http://s16.ucoz.net/src/jquery-1.7.2.js"></script>
<style>
#list{width:260px;}
#black {background-color: #cceecc;}
#white {background-color:#eeeeee;}
</style>
</head>
<body>
<ul id="list">
<li><a href="#">Ссылк</a></li>
<li><a href="#">Ссылк</a></li>
<li><a href="#">Ссылк</a></li>
<li><a href="#">Ссылк</a></li>
<li><a href="#">Ссылк</a></li>
<li><a href="#">Ссылк</a></li>
<li><a href="#">Ссылк</a></li>
<li><a href="#">Ссылк</a></li>
</ul>
<script>
$("#list li:even").attr("id", "black");
$("#list li:odd").attr("id", "white");;
</script>
</body>
</html>

ид можно заменить на класс, хотя разницы не вижу.
http://fotki.ucoz.ua/Mycop/new.html
Сообщение отредактировал bandjuk - Среда, 10 Июл 2013, 11:44:28
KaiLee
Сообщений: 5463
Репутация: 1135

Сообщение # 7 | 11:50:17
bandjuk,
Хм... Действительно, это я уже торможу немножко, надо спать))...
Конкретно под задачу еще подтянуть придется, но оно, по-крайней мере, правильно работает.

Пасиба))

В ЛС - только адреса и пароли. Все остальное - на форуме.
Студия | Шаблоны | Статьи
  • Страница 1 из 1
  • 1
Поиск:
Telegram
Будьте в курсе всех обновлений: подпишитесь на наш официальный Telegram-канал uCoz и задавайте вопросы в чате сообщества!