Bootstrap 手风琴抛出 TypeError:非法调用

Fra*_*exi 0 bootstrap-accordion bootstrap-5

我有一个这样写的手风琴

<!DOCTYPE html>
<html>
    <head>
        <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-eOJMYsd53ii+scO/bJGFsiCZc+5NDVN2yr8+0RDqr0Ql0h+rP48ckxlpbzKgwra6" crossorigin="anonymous">
        <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta3/dist/js/bootstrap.bundle.min.js" integrity="sha384-JEW9xMcG8R+pH31jmWH6WWP0WintQrMb4s7ZOdauHnUtxwoG2vI5DkLtS3qm9Ekf" crossorigin="anonymous"></script>
    </head>
    <body>
    <div id="editTournamentAccordionWrapper" class="accordion accordion-flush">
        <div class="accordion-item">
            <h2 class="accordion-header" id="editTournamentAccordionHeading">
                <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#editTournamentAccordion" aria-expanded="false" aria-controls="editTournamentAccordion">
                    Card title
                </button>
            </h2>
            <div id="editTournamentAccordion" class="accordion-collapse collapse" aria-labelledby="editTournamentAccordionHeading" data-bs-parent="editTournamentAccordionWrapper">
                <div class="accordion-body">
                    <iframe class="w-100" style="height: 1024px;" src="www.example.com"></iframe>
                </div>
            </div>
        </div>
    </div>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

当我第一次单击手风琴标题时,手风琴不会打开并抛出以下异常

未捕获的类型错误:在未实现接口元素的对象上调用了“querySelectorAll”。选择器-engine.js:18:59

知道原因吗?据我所知,这是我必须编写的最少代码才能使错误出现

Par*_*val 5

TLDR:属性中#缺少A。data-bs-parent

根据Bootstrap 文档data-bs-parent接受一个

选择器 | jQuery 对象 | DOM元素

当您传入data-bs-parent="id"属性时,它是纯文本,因此不属于任何类别。结果你得到Uncaught TypeError: Illegal invocation

工作示例:

<!DOCTYPE html>
<html>
    <head>
        <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-eOJMYsd53ii+scO/bJGFsiCZc+5NDVN2yr8+0RDqr0Ql0h+rP48ckxlpbzKgwra6" crossorigin="anonymous">

    </head>
    <body>
    <div id="editTournamentAccordionWrapper" class="accordion accordion-flush">
        <div class="accordion-item">
            <h2 class="accordion-header" id="editTournamentAccordionHeading">
                <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#editTournamentAccordion" aria-expanded="false" aria-controls="editTournamentAccordion">
                    Card title
                </button>
            </h2>
            <div id="editTournamentAccordion" class="accordion-collapse collapse" aria-labelledby="editTournamentAccordionHeading" data-bs-parent="#editTournamentAccordionWrapper">
                <div class="accordion-body">
                  Card Body
<!--                    <iframe class="w-100" style="height: 1024px;" src="www.example.com"></iframe>-->
                </div>
            </div>
        </div>
    </div>
    <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta3/dist/js/bootstrap.bundle.min.js" integrity="sha384-JEW9xMcG8R+pH31jmWH6WWP0WintQrMb4s7ZOdauHnUtxwoG2vI5DkLtS3qm9Ekf" crossorigin="anonymous"></script>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)