【发布时间】:2021-07-20 06:40:41
【问题描述】:
我正在使用 Bootstrap 5 的 Accordion 组件。好消息:效果很好!
但是折叠手风琴的按钮很大,所以我想在其中添加一个额外的链接,用于一些额外的东西。
<div class="accordion accordion-flush" id="myaccordion">
<div class="accordion-item">
<!-- important part starts here -->
<button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#collapse-001" aria-expanded="false" aria-controls="collapse-001">
<img src="https://picsum.photos/50/50" alt="such a nice pic"/>
<p>Sneak peek of what will appear</p>
<a href="http://www.lets-go.out">Let's go</a>
<button>
<!-- important part is over -->
<div id="collapse-001" class="accordion-collapse collapse" aria-labelledby="heading-001" data-bs-parent="#myaccordion">
<div class="accordion-body">
<p>Hidden stuff goes here</p>
</div>
</div>
</div>
<div class="accordion-item">
...
</div>
</div>
我想要什么:单击按钮中的任意位置将打开手风琴,但如果我单击链接则不会。如果我点击链接,我想关注href。
我得到了什么:点击按钮中的任意位置都会打开手风琴,即使我点击了链接。
我尝试在链接上添加额外的 e.preventDefault() 或 e.stopPropagation(),但没有成功:(
有什么想法吗?
【问题讨论】:
-
我没有更多的 JS。我所尝试的只是在我的链接中添加 onclick="e.stopPropagation(); window.open('myurl','_self');"但没有成功。
标签: javascript twitter-bootstrap accordion bootstrap-5 bootstrap-accordion