Помогите с логикой пожалуйста
Под свои нужды хочу немного модифицировать flexMenu!, смысл в том, что имеется два меню на сайте с разными id, и хочу добавить в код следующее условие, если ul с id=top, тогда title будет top, в противном случае middle. Но не допераю как сделать сравнение найденного в html-коде ul'a с нужным мне значением.
|
fallen_soul,
Цитата:
|
через $('ul'). Проблема, для меня, в том, что js я вообще не изучал, и где-то в чем-то могу ошибаться.
Кусок кода: <ul id="top"> <li>one</li> <li>two</li> <li>three</li> <li>four</li> <li>five</li> </ul> <ul id="middle"> <li>one</li> <li>two</li> <li>three</li> <li>four</li> <li>five</li> </ul> Еще такое уточнение, скрипт флекс меню, при скрывании не влезающих элементов, вставляет вокруг спрятанных <li> свой <ul> c подписью "Еще", а когда все элементы в ней - вставляет Меню. |
fallen_soul,
<!DOCTYPE html >
<html>
<head>
<title></title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<script>
$(window).ready(function () {
$('ul').each(function (indx) {
alert($(this).attr('id'));
});
});
</script>
</head>
<body>
<ul id="top">
<li>one</li>
<li>two</li>
<li>three</li>
<li>four</li>
<li>five</li>
</ul>
<ul id="middle">
<li>one</li>
<li>two</li>
<li>three</li>
<li>four</li>
<li>five</li>
</ul>
</body>
</html>
Можно прямо это значение присваивать title |
Dilettante_Pro, спасибо большое, за помощь. А можно ли это сделать в виде
if (все li скрыты) { if (ul с id=top){ значение <ul id=top>Top</ul> } else { значение <ul id=middle>Middle</ul> } else { не все li скрыты, показываем надпись "Еще" }}... Просто в скрипте flexMenu, есть конструкция if else, которая проверяет, все ли элементы списка скрыты в выпадающий список, и если скрыты, то отображается надпись Меню, если нет, отображается "Еще". И я считаю, что правильней будет в эту конструкцию добавить условие проверки, с какого ul#id идет вызов скрипта, для присвоения ему имени. Также в скрипте, есть $(this), которая в процессе выполнения содержит в себе ul#top, но я не понимаю, как содержимое $(this) сравнить с тем условием которое мне нужно, вернее с чем его сравнивать. Пробовал и через объявление переменной, и через строку. А внятный ответ на то, что передает $(this) я не нашел, возможно плохо искал. |
fallen_soul,
$(this).attr('id') == 'top' |
Dilettante_Pro,
Спасибо огромнейшее, помогло и работает. Была б возможность, проставился бы:dance: |
| Часовой пояс GMT +3, время: 15:17. |