如何让Divi手风琴模块的最后一个项目默认展开

来源:Vuejs社区作者:关中王头衔:草根站长
导读:本期聚焦于小伙伴创作的《如何让Divi手风琴模块的最后一个项目默认展开》,敬请观看详情,探索知识的价值。以下视频、文章将为您系统阐述其核心内容与价值。如果您觉得《如何让Divi手风琴模块的最后一个项目默认展开》有用,将其分享出去将是对创作者最好的鼓励。

在使用Divi主题构建页面时,手风琴模块(accordion module)常用来折叠展示多块内容。默认所有项目都是收起的,但有些场景需要让最后一个项目在打开页面时就处于展开状态,比如把联系方式放在最后并直接露出。下面介绍一种简单稳定的实现方式。

如何让Divi手风琴模块的最后一个项目默认展开

为什么不能直接用CSS

手风琴的展开状态由Divi的脚本控制,它会在切换时给对应元素添加或移除特定的类与内联样式。如果只写CSS强制最后一个项目显示,当用户点击其他项目时,脚本的逻辑可能会出错,或者最后一项无法被正常收起。因此用少量jQuery在加载后触发展开是最稳妥的做法。

实现步骤

1. 确认模块结构

Divi手风琴模块在前端渲染后,每个项目通常包含类 et_pb_accordion_item,整个容器为 et_pb_accordion。最后一个项目就是容器内的最后一个 et_pb_accordion_item

2. 添加jQuery代码

你可以把以下代码放到子主题的 scripts.js 中,或通过Divi主题选项里的“集成”选项卡加到 body 结束前。代码会在页面就绪后找到最后一个手风琴项并展开它。

jQuery(document).ready(function($) {
  // 找到页面中所有手风琴模块
  $('.et_pb_accordion').each(function() {
    // 获取该模块内的最后一个项目
    var $lastItem = $(this).find('.et_pb_accordion_item').last();
    // 如果该项尚未展开,则模拟点击标题以展开
    if (!$lastItem.hasClass('et_pb_active')) {
      $lastItem.find('.et_pb_toggle_title').trigger('click');
    }
  });
});

3. 只针对特定页面

如果你只想在某个页面生效,可以给该页面的手风琴模块加一个自定义CSS类,例如 my-accordion,然后把选择器改成 $('.my-accordion') 即可。

注意事项

  • 请使用子主题或代码注入功能,避免Divi更新后丢失改动。
  • 如果网站开启了缓存,添加代码后请清空缓存再测试。
  • 若手风琴内容由动态数据生成,确保脚本在内容加载后执行,可把代码放在窗口加载事件中。

小结

通过上面这段jQuery,我们就能轻松实现让Divi手风琴模块的最后一个项目默认展开。相比纯CSS方案,这种方法不会破坏模块自身的交互逻辑,维护起来也简单。

Diviaccordion_moduledefault_expand修改时间:2026-07-29 19:33:16

免责声明:​ 已尽一切努力确保本网站所含信息的准确性。网站内容多为原创整理与精心编撰,观点力求客观中立。本站旨在免费分享,内容仅供个人学习、研究或参考使用。若引用了第三方作品,版权归原作者所有。如内容涉及您的权益,请联系我们处理。
内容垂直聚焦
专注技术核心技术栏目,确保每篇文章深度聚焦于实用技能。从代码技巧到架构设计,为用户提供无干扰的纯技术知识沉淀,精准满足专业提升需求。
知识结构清晰
覆盖从开发到部署的全链路。AI、前端、编程、数据库、服务器、建站、系统层层递进,构建清晰学习路径,帮助用户系统化掌握开发与运维所需的核心技术。
深度技术解析
拒绝泛泛而谈,深入技术细节与实践难点。无论是数据库优化还是服务器配置,均结合真实场景与代码示例进行剖析,致力于提供可直接应用于工作的解决方案。
专业领域覆盖
精准对应开发生命周期。从前端界面到后端编程,从数据库操作到服务器运维,形成完整闭环,一站式满足全栈工程师和运维人员的技术需求。
即学即用高效
内容强调实操性,步骤清晰、代码完整。用户可根据教程直接复现和应用于自身项目,显著缩短从学习到实践的距离,快速解决开发中的具体问题。
持续更新保障
专注既定技术方向进行长期、稳定的内容输出。确保各栏目技术文章持续更新迭代,紧跟主流技术发展趋势,为用户提供经久不衰的学习价值。