使用jQuery动态构建子菜单

时间:2012-08-31 21:47:39

标签: jquery list submenu

具有以下结构:

<div id="block1">
   <ul class="category">
      <li>Comedy</li>
   </ul>
</div>

<div id="block2">
   <ul class="category">
       <li>Comedy</li>
       <li>Drama</li>
   </ul>
</div>

使用php category生成无序列表foreach(),在某些块中,ul可能包含1 li,而在其他块中可能包含2,3 {或X {{ 1}},所以我需要在第一个li的子菜单中转换那些额外的li

  • 我的问题是,如何选择第一个之后的li的其余部分?因为一旦我拥有<li>的其余部分,我就可以将它们包含在另一个li中并构建子菜单。

我可以使用以下代码来过滤多个选项的列表,但是呢?

ul

2 个答案:

答案 0 :(得分:1)

您可以使用wrapAll方法。

$('ul.category').each(function(){
  $('li:gt(0)', this).wrapAll('<ul/>')
})

答案 1 :(得分:0)

要在第一个元素之后使用li

获取所有.slice()个元素
$(this).children("li").slice(1);

然后你可以使用这些元素来做你需要的任何包装