li"); for(var -6ren">
gpt4 book ai didi

jquery - .slice 和 .wrapall

转载 作者:行者123 更新时间:2023-12-03 23:04:10 25 4
gpt4 key购买 nike

我正在使用 stackoverflow 上的一位成员建议的一些代码,并由我进行修改,将每 3 个列表项包装为大型菜单的一部分。代码是:

var lis = $("ul > li");
for(var i = 0; i < ls.length; i+=3) {
lis.slice(i, i+3).wrapAll("<div class='new'></div>");
}

不幸的是,这将从下一个父菜单中获取子 li,以填充 div 中 3 li 的“配额”。这当然严重扰乱了我的菜单。 有关示例,请访问此处。

有人对我如何解决这个问题有任何建议吗?

最佳答案

你的问题是你的选择器。由于 sizzle 从右到左工作,因此它只会查询所有以 UL 元素 作为直接父元素的 LI 元素(通常始终是案例)。

因此,将您的 UL 分开。

$('ul').each(function(){
var $lis = $(this).children('li');
for(var i = 0, len = $lis.length; i < len; i+=3){
$lis.slice(i, i+3).wrapAll("<div class='new'></div>");
}
});

关于jquery - .slice 和 .wrapall,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3385430/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com