0

除了你所在的 div 之外,你如何在 jQuery 中包装每个 div?我认为它是 wrap 函数,但不知道如何操作它以使其包装除此 div 之外的所有内容。

4

3 回答 3

1

假设this引用一个div元素,您可以使用.not()方法将元素从集合中排除并.wrapAll()用于包装其他div元素。

$('div.classname').not(this).wrapAll('<div class="wrapper"/>');
于 2013-10-02T02:20:31.867 回答
1

这取决于您的 html 结构如何,它可能会变得复杂,这取决于要包装的 div 是要包装的 div 之一的后代。

例子:

$('div').wrapAll($('<div/>', {'class':'wrapper'})).filter(this).insertAfter('.wrapper');

小提琴

如果他们只是所讨论的 div 的兄弟姐妹,那么:

   $(this).siblings('div').wrapAll($('<div/>', {'class':'wrapper'}));
于 2013-10-02T02:25:11.277 回答
0

除了当前元素之外,您可以将每个元素包装在同一级别

$('#yourElements').siblings().each(function(){ 
    $(this).wrap('<div class="wrapwrapwrap" />') 
})
于 2013-10-02T02:33:58.937 回答