Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 24.11.2014, 18:46
Новичок на форуме
Отправить личное сообщение для romanpan2 Посмотреть профиль Найти все сообщения от romanpan2
 
Регистрация: 24.11.2014
Сообщений: 4

Подскажите как посчитать элементы списков и для каждого списка назначить свои парамет
В общем такой вопрос... есть несколько списков... Задача такая...в каждом списке посчитать <li> и на основе подсчитанных данных присвоить каждому свой класс
Код:
<ul class='nav'>
     <li>Ссылка</li>
     <li>Ссылка</li>
     <li>Ссылка</li>
</ul>
<ul class='nav'>
     <li>Ссылка</li>
     <li>Ссылка</li>
</ul>
<ul class='nav'>
     <li>Ссылка</li>
     <li>Ссылка</li>
     <li>Ссылка</li>
     <li>Ссылка</li>
     <li>Ссылка</li>
</ul>
Скрипт
Код:
jQuery('.nav').children('li').each(function(){
   		
   		if (jQuery(this).length = '2') { jQuery(this).addClass('2');}
   		else if (jQuery(this).length = '3'){ jQuery(this).addClass('3'); }
   		else if (jQuery(this).length = '4'){ jQuery(this).addClass('4'); };
 		});
Получается, что он присвает каждому <li> один класс.. А необходимо если в одном <ul> определенное колличество <li> он этим <li> присвоил свой класс и так для каждого <ul> списка
Т.е. в итоге должен получиться следующий код
Код:
<ul class='nav'>
     <li class='3'>Ссылка</li>
     <li class='3'>Ссылка</li>
     <li class='3'>Ссылка</li>
</ul>
<ul class='nav'>
     <li class='2'>Ссылка</li>
     <li class='2'>Ссылка</li>
</ul>
<ul class='nav'>
     <li class='5'>Ссылка</li>
     <li class='5'>Ссылка</li>
     <li class='5'>Ссылка</li>
     <li class='5'>Ссылка</li>
     <li class='5'>Ссылка</li>
</ul>

Последний раз редактировалось romanpan2, 24.11.2014 в 18:49.
Ответить с цитированием
  #2 (permalink)  
Старый 24.11.2014, 18:54
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

Сообщение от romanpan2
length = '2'
это что по вашему?
Ответить с цитированием
  #3 (permalink)  
Старый 24.11.2014, 18:56
Новичок на форуме
Отправить личное сообщение для romanpan2 Посмотреть профиль Найти все сообщения от romanpan2
 
Регистрация: 24.11.2014
Сообщений: 4

Код:
 jQuery(this).length = '2'
Это он посчитал кол-во <li> в списке и сравнивает
Ответить с цитированием
  #4 (permalink)  
Старый 24.11.2014, 19:01
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

romanpan2,
а где сравнение то ??????
Ответить с цитированием
  #5 (permalink)  
Старый 24.11.2014, 19:02
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

romanpan2,

<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>
  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
  <script>
     $(function(){
     $(".nav").each(function(indx, element){
       var li = $(this).find('li');
        li.addClass(''+li.length)
           });
   alert($('body').html())
});
  </script>
</head>

<body>

<ul class='nav'>
     <li>Ссылка</li>
     <li>Ссылка</li>
     <li>Ссылка</li>
</ul>
<ul class='nav'>
     <li>Ссылка</li>
     <li>Ссылка</li>
</ul>
<ul class='nav'>
     <li>Ссылка</li>
     <li>Ссылка</li>
     <li>Ссылка</li>
     <li>Ссылка</li>
     <li>Ссылка</li>
</ul>


</body>

</html>
Ответить с цитированием
  #6 (permalink)  
Старый 24.11.2014, 19:05
Новичок на форуме
Отправить личное сообщение для romanpan2 Посмотреть профиль Найти все сообщения от romanpan2
 
Регистрация: 24.11.2014
Сообщений: 4

Спасибо большое))) день провазился) не догадался так)
Ответить с цитированием
  #7 (permalink)  
Старый 24.11.2014, 19:06
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

romanpan2,
jQuery(this).length == '2' -- вот сравнение, а у вас присвоение
Ответить с цитированием
  #8 (permalink)  
Старый 24.11.2014, 19:08
Новичок на форуме
Отправить личное сообщение для romanpan2 Посмотреть профиль Найти все сообщения от romanpan2
 
Регистрация: 24.11.2014
Сообщений: 4

Ошибку понял)
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как установить значения поле name для каждого элемента формы autofan jQuery 0 27.07.2014 10:57
Как вы относитесь к наркоманам? Maxmaxmaximus7 Оффтопик 7 05.02.2014 13:29
Как правильно скрыть элементы для экономии ресурсов на прорисовку? Randomizer jQuery 0 16.10.2012 13:59
как перебрать элементы списка с задержкой xyzdsnxyz jQuery 4 20.01.2012 12:41
как сделать событие для списка node. DimaRogov Events/DOM/Window 5 18.09.2011 16:52