我使用以下内容将所有具有“子”类的项目与“父”类的 div 一起包装:
$(".child").wrapAll('<div class="parent" />');
问题是该函数有时会重新运行,我不希望创建多个 div.parents'。如何在我的代码中添加条件,以便仅在 div.childs' 还没有具有“父级”类的父级时才添加 div.parent?谢谢
我使用以下内容将所有具有“子”类的项目与“父”类的 div 一起包装:
$(".child").wrapAll('<div class="parent" />');
问题是该函数有时会重新运行,我不希望创建多个 div.parents'。如何在我的代码中添加条件,以便仅在 div.childs' 还没有具有“父级”类的父级时才添加 div.parent?谢谢
你可以hasClass()
这样使用:
if (! $(".child").parent().hasClass('parent')){
$(".child").wrapAll('<div class="parent" />');
}
或closest
与 一起使用length
:
if (! $(".child").closest('.parent').length){
$(".child").wrapAll('<div class="parent" />');
}
不知道快不快:
$(":not(.parent) > .child").wrapAll('<div class="parent" />');
没测试!!但可能有效
您可以在单行中完成)
$(".child").parents('p:not(.parent)').find(".child").wrapAll('');