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

Bootstrap 5中Collapse的getOrCreateInstance为何会立即切换元素?

Bootstrap 5 Collapse getOrCreateInstance 自动切换状态问题解决

问题原因

调用getOrCreateInstance时元素可见性自动切换,是因为Bootstrap 5 Collapse在创建新实例时,默认初始化选项中的toggle参数为true——这个参数控制实例创建完成后是否自动切换一次元素的可见状态。你的代码没有覆盖这个默认值,所以实例创建时就触发了状态切换。

修正方案

在调用getOrCreateInstance时,传入{ toggle: false }的配置选项,就能在不改变元素初始状态的前提下获取或创建实例:

修正后的JavaScript代码

const details = document.getElementById("details");
// 传入toggle: false,禁止初始化时自动切换状态
const detailsCollapse = bootstrap.Collapse.getOrCreateInstance(details, { toggle: false });

const btn = document.getElementById("toggleDetails");
btn.addEventListener("click", (e) => {
    detailsCollapse.toggle();
});

效果说明

这样修改后,页面加载时可折叠元素会保持初始的隐藏状态,只有点击按钮时才会触发toggle()方法切换可见性,完全符合需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 13:13:07