You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

jQuery each方法执行时.list类div被重复包裹两层问题求解

问题原因

你写的代码在遍历每个.parent元素时,都是全局查找页面所有.list元素:页面存在2个.parent的情况下,wrap方法会被执行2次,所以每个.list都会被包裹2层.wrap。

解决方案

方案1:限定查找范围(适配需要单独处理每个.parent逻辑的场景)

在each循环内,只查找当前遍历到的.parent下的.list元素即可,修改后代码如下:

jQuery(".parent").each(function () {
  // 限定查找范围为当前遍历到的.parent容器内
  jQuery(this).find(".list").wrap("<div class='wrap'></div>");
});

你也可以写成jQuery(".list", this).wrap("<div class='wrap'></div>"),两种写法效果完全一致。

方案2:直接批量处理(无需额外处理.parent逻辑时更简洁)

你的需求只是给所有.list外层包一层.wrap,完全不需要遍历.parent,直接写一行代码就可以实现:

jQuery(".list").wrap("<div class='wrap'></div>");

两种方案都可以实现每个.list外层仅包裹一层.wrap的需求,你可以根据自己的实际业务场景选择。

内容的提问来源于stack exchange,提问作者Cosimo wiSe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 17:36:03