Групировка многоуровнего меню
Здравствуйте. подскажите пожалуйста.
имеется меню вот такого вида <ul class="leftMenu collapsible"> <li class="cat=1"> <a class="" href="#">Категория1/1</a> <ul class="leftMenuInside"> <li class="cat=1"><a href="ссылка">СерПол1/1 name</a></li> <li class="cat=2"><a href="ссылка2">СерПол1/2 name</a></li> </ul> </li> <li class="cat=2"> <a class="" href="#">Категория1/2</a> <ul class="leftMenuInside"> <li class="cat=1"><a href="ссылка">СерПол1/1 name</a></li> <li class="cat=2"><a href="ссылка2">СерПол1/2 name</a></li> </ul> </li> </ul> Подскажите как с помощью javascript чистого или jQuery сделать так что бы оно стало вот такого вида <ul class="leftMenu collapsible"> <li class="cat=1"> <a class="" href="#">Категория1/1</a> <ul class="leftMenuInside"> <li class="cat=1"><a href="ссылка">СерПол1/1 name</a></li> </ul> </li> <li class="cat=2"> <a class="" href="#">Категория1/2</a> <ul class="leftMenuInside"> <li class="cat=2"><a href="ссылка2">СерПол1/2 name</a></li> </ul> </li> </ul> То есть <li class="cat=1"> имел внутри себя только элементы с классом class="cat=1" (<li class="cat=1"><a href="ссылка">СерПол1/1 name</a>), ну и тд <li class="cat=2"> только (<li class="cat=2"><a href="ссылка">СерПол1/1 name</a>) |
а не соответствующим классам например если <li class="cat=1">
будет содержать <li class="cat=2"> то он добавил <li class="cat=2"> display none (скрыл данный элемент) |
Цитата:
<!DOCTYPE html>
<html>
<head>
<script src='http://code.jquery.com/jquery-latest.js'></script>
<!--
<link rel='stylesheet type=text/css href=tmp.css' />
-->
<style type='text/css'>
</style>
<script type='text/javascript'>
$(function (){
$('.leftMenu > li').each(function (){
$(this).find('li[class!="'+this.className+'"]').hide();
});
});
</script>
</head>
<body>
<ul class="leftMenu collapsible">
<li class="cat=1">
<a class="" href="#">Категория1/1</a>
<ul class="leftMenuInside">
<li class="cat=1"><a href="ссылка">СерПол1/1 name</a></li>
<li class="cat=2"><a href="ссылка2">СерПол1/2 name</a></li>
</ul>
</li>
<li class="cat=2">
<a class="" href="#">Категория1/2</a>
<ul class="leftMenuInside">
<li class="cat=1"><a href="ссылка">СерПол1/1 name</a></li>
<li class="cat=2"><a href="ссылка2">СерПол1/2 name</a></li>
</ul>
</li>
</ul>
</body>
</html>
|
Цитата:
и можно за место hide поставит remove () Спасибо огромное |
| Часовой пояс GMT +3, время: 06:54. |