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

如何用jQuery将每4个<li>子元素分别移动到新父<ul>中?

实现按数量拆分列表项到多个父容器

要实现把原列表的<li>按每4个一组分配到目标区域的两个<ul>里,你可以这样修改代码:

$(document).ready(function() {
  // 获取所有需要填充的目标ul容器
  const targetUls = $(".container_row .wrap ul");
  // 获取原菜单下的所有li元素
  const menuItems = $(".sub_menu li");
  // 定义每个容器要放置的元素数量
  const itemsPerGroup = 4;

  // 遍历每个目标容器,分配对应数量的li
  targetUls.each(function(index) {
    // 计算当前容器对应的li起始和结束索引
    const start = index * itemsPerGroup;
    const end = start + itemsPerGroup;
    // 截取对应范围的li并追加到当前容器
    $(this).append(menuItems.slice(start, end));
  });

  // 可选:移除不再需要的原sub_menu容器
  $(".sub_menu").remove();
});

代码细节解释:

  • 先获取目标容器集合和所有待分配的<li>元素,同时明确每组的元素数量(这里是4)。
  • 用.each()遍历每个目标<ul>,根据容器的索引计算要截取的<li>范围:第一个容器取索引0-3的元素,第二个取4-7的元素。
  • .slice(start, end)方法会返回指定范围的DOM元素集合,再通过.append()将这些元素移动到目标容器中(DOM元素在页面中只能存在一个位置,移动后原位置的元素会自动移除)。
  • 如果原.sub_menu容器已经没有保留的必要,可以调用.remove()删除它,让页面结构更简洁。

运行这段代码后,就能得到你期望的最终HTML结构了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.12 05:33:47