jquery clone slice 问题
发布网友
发布时间:2022-12-16 21:11
我来回答
共1个回答
热心网友
时间:2023-09-10 22:32
1.原理:直接对$("#test")使用slice()会导致li被切割,第一次切掉0-3,所以第二次只剩下4-9,也就是这次的0-3对应4-6,这才有1-3,4-6,7-9,第四次切割失效的情况发生。
2.解决方案:$("body").append($("#test").clone(true).find("li").slice(0,3));
每次都使用克隆出来的div进行切割,就可以保住id="test"的div是完整的,因此每次slice(0,3)都能得到1-3。(无限次切割)
3.建议:可以使用firebug看到切割效果。
PS:你原来的例子,把tmp移到函数内就可以了。
function myClone(){
var tmp = $("#test").clone(true);
$("body").append(tmp.find("li").slice(0,3));
}