创建一个链接到页面并打开一个手风琴式选项卡



我有一个bootstrap 5手风琴:

<div class="accordion" id="accordionIndexPage">
<div class="accordion-item">
<h2 class="accordion-header" id="flush-headingOne">
<button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#flush-collapseOne" aria-expanded="false" aria-controls="flush-collapseOne">
<i class="fa fa-info-circle"></i> &nbsp; Summary
</button>
</h2>
<div id="flush-collapseOne" class="accordion-collapse collapse" aria-labelledby="flush-headingOne" data-bs-parent="#accordionIndexPage">
<div class="accordion-body">
[something]
</div>
</div>
<div class="accordion-item">
<h2 class="accordion-header" id="flush-headingTwo">
[etc...]

我想在导航菜单中创建一个链接,当从任何页面单击时,该链接会将用户引导到手风琴所在的页面(index.html(,然后在特定选项卡上打开手风琴(例如flush-collapseOne(。

我甚至从Bootstrap的网站上得到了thins代码:

var myCollapse = document.getElementById('flush-collapseOne')
var bsCollapse = new bootstrap.Collapse(myCollapse, {
toggle: false
})

我走对了吗?

PS

我只是想我可以存储一个会话存储cookie,比如fromDiffPage: True,当你点击另一个页面的链接时,然后在我的index.html页面中放入一个JavaScript,如果这个参数为真,就会打开那个选项卡。这行得通吗?

我使用sessionStorage对象解决了问题:

<a class="nav-link" onclick="sessionStorage.setItem('fromNav', 'prints');" href="/">Summary</a>

然后index.html:中的JavaScript代码

if (sessionStorage.getItem('fromNav') == 'prints') {
new bootstrap.Collapse(document.getElementById('flush-collapseOne'), {
toggle: true
})
sessionStorage.setItem('fromNav', '')
window.location.href = "#flush-headingOne";
}