我正试图将一个长的无序列表分解成更小的部分,如下所示:
$('.cList').each(function() {
var thisList = $(this).find('li')
var thisLen = thisList.length
for(var x=0;x<thisLen;x++) {
if((x % 5)==0&&x>0) {
$(thisList).eq(x).after("</ul><ul>")
}
}
})
我最终得到的是这样的:
<li>...</li>
<li>...</li>
<li>...</li>
<li>...</li>
<li>...</li>
<ul></ul> <---- I want the list to end and start, not make a nested list
而不是这个:
<li>...</li>
<li>...</li>
<li>...</li>
<li>...</li>
<li>...</li>
</ul><ul> <--- like this
就好像插入了</ul><ul>
是无效的 HTML,jQuery 以某种方式决定 <ul></ul>
有效。
最佳答案
我不会特别担心打开和关闭标签,而是使用 .wrapAll()
包裹 <ul>
包含 5 <li>
的 jQuery 对象周围的标签秒。您可以使用 .slice()
捕获大块的<li>
来自 thisList
.
关于javascript - jQuery .after() 尝试 "correct"我插入的 html。我该如何阻止呢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7178718/