【问题标题】:What does .modal('dispose') do? Bootstrap 4.modal('dispose') 有什么作用?引导程序 4
【发布时间】:2020-03-29 05:45:19
【问题描述】:

根据文档,.modal('dispose') 会破坏模态。

.modal('dispose')

销毁一个元素的模态。

但是当我使用创建eventListener

$('#myModal').on('hidden.bs.modal', function (event) {
    // Destroy modal
    $('#myModal').modal('dispose');
});

模态仍然是文档的一部分。文档让我很困惑,这个方法不是用来从文档中删除模态的吗?这种方法的目的是什么?

$('#myModal').modal('show');

$('#myModal').on('hidden.bs.modal', function (event) {
  console.log('Destroy modal');
  $('#myModal').modal('dispose');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.1/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-WskhaSGFgHYWDcbwN70/dfYBj47jz9qbsMId/iRN3ewGhXQFZCSftd1LZCfmhktB" crossorigin="anonymous">
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.1/js/bootstrap.bundle.min.js" integrity="sha384-u/bQvRA/1bobcXlcEYpsEdFVK/vJs3+T+nXLsBYJthmdBuavHvAW6UsmqO2Gd/F9" crossorigin="anonymous"></script>
<div class="modal" tabindex="-1" role="dialog" id="myModal">
  <div class="modal-dialog" role="document">
    <div class="modal-content">
      <div class="modal-header">
        <h5 class="modal-title">Modal title</h5>
        <button type="button" class="close" data-dismiss="modal" aria-label="Close">
          <span aria-hidden="true">&times;</span>
        </button>
      </div>
      <div class="modal-body">
        <p>Modal body text goes here.</p>
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-primary">Save changes</button>
        <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
      </div>
    </div>
  </div>
</div>

【问题讨论】:

    标签: jquery html twitter-bootstrap bootstrap-4


    【解决方案1】:

    它会破坏 Bootstrap 的 Modal 组件的 jQuery 实例。它不会从 DOM 中删除模态标记。

    【讨论】:

    • 这部分遮阳篷真的应该添加到文档It destroys the jQuery instance of the Bootstrap's Modal component
    • 销毁 jQuery 实例有什么意义?所有方法仍然适用于同一个实例/元素,例如$('#myModal').modal('toggle') 即使在 $('#myModal').modal('dispose'); 之后仍然有效。
    猜你喜欢
    • 2020-04-09
    • 2023-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多