jQuery Wrap功能只有一个

时间:2013-10-02 02:17:23

标签: jquery function

你如何在jQuery中包装每个div,但是你所在的div?我假设它是包装函数,但不知道如何操纵它使它包装所有但除了这个div。

3 个答案:

答案 0 :(得分:1)

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

$('div.classname').not(this).wrapAll('<div class="wrapper"/>');

答案 1 :(得分:1)

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

示例:

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

<强> Fiddle

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

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

答案 2 :(得分:0)

您可以通过

将每个元素包装在除当前元素之外的同一级别中
$('#yourElements').siblings().each(function(){ 
    $(this).wrap('<div class="wrapwrapwrap" />') 
})