Heim  >  Fragen und Antworten  >  Hauptteil

Das modale Bootstrap-Feld kann nicht geschlossen werden, wenn auf die Schaltfläche „X“ oder „Schließen“ geklickt wird

Wenn ich klicke, um das Modal zu öffnen, wird das Modal einwandfrei angezeigt und die Schaltfläche „Schließen“ zeigt an, dass meine Maus darüber schwebt, aber wenn ich darauf klicke, passiert nichts und das Modal bleibt geöffnet. Hat jemand dieses Problem schon einmal festgestellt/gelöst? Ich sehe hier nur das Hinzufügen von „data-bs-dismiss“, aber das hat keine Auswirkungen auf das Schema. Ich bin neu im Bootstrap-Bereich, daher wäre ich für jede Hilfe sehr dankbar! Der Code lautet wie folgt, Link zum vollständigen Code -

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <meta name= "viewport" content ="width=device-width, initial-scale=1">
    <title>Pokedex</title>
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
    <link href="./CSS/styles.css" rel="stylesheet"/>
    <link rel="stylesheet" type="text/css" href="css/styles.css">
    <script src="js/scripts.js" defer></script>

  </head>
  <body>
    

    <div class="pokedex">
      <h1 class="pokemon-header">Pokedex</h1>
      <ul class="pokemon-list list-group"></ul></div>
      
      <div class="modal" id="modal-container" tabindex="-1" role="dialog" aria-labelledby="modal-container" aria-modal="true">
        <div class="modal-dialog" role="document">
          <div class="modal-content">
            <div class="modal-header">
              <h2 class="modal-title"></h2>
              <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                <span aria-hidden="true">&times;</span>
              </button>
            </div>


            <div class="modal-body">
            </div>
            <div class="modal-footer">
              <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
            </div>
          </div>
        </div>
      </div>
      <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
      <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script>
      <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>  
      <script src="js/promise-polyfill.js"></script>
      <script src="js/fetch-polyfill.js"></script>
    </body>
</html>

P粉809110129P粉809110129202 Tage vor398

Antworte allen(1)Ich werde antworten

  • P粉968008175

    P粉9680081752024-03-30 23:04:31

    有几个问题。

    让我们从创建橙色戳按钮的方式开始。

    function addListItem(pokemon) {
        let listItem = $('
  • '); let button = $(''); listItem.append(button); pokemonListElement.append(listItem); button.on('click', function(){ showDetails(pokemon); }); }

    这似乎没问题......但是:

    let button = $('');

    看看 data target="#modal-container 。缺少一个连字符,而不是这个

    data target="#modal-container"

    它应该看起来像这样:

    data-target="#modal-container"

    接下来,您的 showDetailsModal(pokemon) 函数中不需要包含此行:

    modalContainer.classList.add('show');

    data-targetdata-toggle 将为您介绍该部分。

    最后,您的 CSS 似乎将模态的背景放在模态的顶部。更改此:

    #modal-container {
        ...
        z-index: 999;
        ...
    }

    更改为其他内容(例如,1051,或者您可以将其删除,然后让 Bootstrap 为您处理),因为背景的 z-index 为 1040。

    Antwort
    0
  • StornierenAntwort