我需要拆分每2个li并将它们附加到div
我有一个通用列表
- list item1
- list item2
- list item3
- list item4
- list item5
- list item6
但我想做的是
- list item1
- list item2
- list item3
- list item4
- list item5
- list item6
我无法向li添加类的原因是这是在Business Catalyst中创建的动态菜单,我可以使用任何建议来处理这种情况的最佳方法。
最好的塔拉
示例: http : //jsfiddle.net/jBYqt/2/
$('ul > li:nth-child(2n-1)').each(function() { $(this).next().add(this).wrapAll('
'); }).eq(0).closest('div').unwrap();
-
nth-child-selector
(docs)从第一个开始每秒 -
each()
(docs)迭代它们 -
next()
(docs)获得下一个 -
add()
(docs)将当前的一个添加到下一个(所以你有1和2,3和4等组) -
wrapAll()
(docs)用新的包装器包装它们。 -
eq()
(docs)从集合中获取第一个 -
closest()
(docs)遍历最近的(新创建的) -
unwrap()
(docs)删除旧的
编辑:修改我的答案来处理奇数个
元素。
您可以将.slice()
方法与.slice()
方法结合使用。
像这样的东西会起作用。
$('li') .slice(2) .wrap('');
当结果是奇数时由你来处理案例。
$(document).ready(function(){ var f=true; var l; $('ul>li').each(function(){ if (f) { l=$('
'); $(this).appendTo($('ul',l)); }else{ $(this).appendTo($('ul',l)); $(l).appendTo('body'); } f=!f; }); $('body>ul').remove() });