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

如何实现页面加载时打乱合作伙伴画廊父DIV组且子元素不错乱?

问题分析与解决方案

你的问题出在当前脚本打乱的是.ba-feature-grid-layout下的所有直接子元素,而这些子元素是单个合作伙伴的拆分组件(比如logo、名称、链接容器),而非完整的合作伙伴项,所以才会出现信息对应错乱的情况。

正确的思路是:找到包裹单个合作伙伴所有信息的完整容器节点,然后打乱这些容器的顺序,这样每个合作伙伴的logo、名称、链接会作为一个整体被重新排序。

修正后的脚本

假设每个完整的合作伙伴项的类是.ba-feature-item(根据常见画廊结构结合你的层级图推断,你可以根据实际DOM结构调整这个选择器),修正代码如下:

$(document).ready(function() {
  // 选中包裹单个合作伙伴的完整容器集合
  var parent = $('.ba-feature-grid-layout');
  var items = parent.children('.ba-feature-item'); // 改为选中完整的合作伙伴项
  // 打乱完整项的顺序
  while (items.length) {
    parent.append(items.splice(Math.floor(Math.random() * items.length), 1)[0]);
  }
});

关键说明

  • 核心是选中完整的合作伙伴容器,而不是容器内部的拆分元素。你需要确认DOM结构中,每个合作伙伴的所有信息(logo、名称、链接)都被同一个父容器包裹,把选择器替换成这个容器的类或ID即可。
  • 原代码的divs = parent.children()会选中所有子元素,包括单独的logo、名称等,导致拆分打乱;修正后只选中完整的项,保证每个合作伙伴的信息作为整体被排序。

如果你的完整合作伙伴项不是.ba-feature-item,可以通过浏览器开发者工具查看DOM结构,找到对应的容器选择器替换即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 01:50:15