jQuery实现将item-2内的span移至同容器item-1的span之后
修正后的jQuery代码实现需求
你的原代码存在两个关键问题:一是使用全局选择器.item-1 span会把所有元素都移到第一个匹配的元素后面,无法实现同容器内的对应操作;二是你移动的是item-2这个父容器,而需求是移动容器内的span元素。
修正后的代码如下:
// 遍历每个items-wrapper容器,确保操作范围限定在当前容器内 $(".items-wrapper").each(function() { // 定位当前容器内item-2中的span元素 const targetSpan = $(this).find(".item-2 span"); // 将目标span移到当前容器内item-1的span元素之后 targetSpan.insertAfter($(this).find(".item-1 span")); // 可选:若移动后需要移除空的item-2容器,可取消下方注释 // $(this).find(".item-2").remove(); });
代码说明:
- 先遍历每个
.items-wrapper容器,保证每一次操作都只针对当前容器内的元素,不会干扰其他容器的内容。 - 用
$(this).find()精准定位当前容器内的item-1和item-2下的span元素,确保是同容器内的对应元素。 - 直接调用
insertAfter()方法移动目标span,无需操作父元素,精准满足需求。
内容的提问来源于stack exchange,提问作者younes
相关产品推荐
相关产品推荐

