第二个模态关闭时第一个模态滚动隐藏

问题描述 投票:0回答:3

使用两个模态时,在第二个模态关闭时,第一个模态的滚动将隐藏。
可以看到一个例子here(这不是我的代码,我只是用它来展示我的问题是什么)。
我的第一个模态框代码在这里

`<div id="myModalFirst" class="modal fade" role="dialog" tabindex='-1'>
  <div class="modal-dialog modal-sm">
    <div class="modal-content">
      // custom divs here
    </div>
  </div>
</div>`



我的第二个模态框代码在这里

`<div id="myModalSecond" class="modal fade" role="dialog" tabindex='-1'>
  <div class="modal-dialog modal-sm">
    <div class="modal-content">
      // custom divs here
    </div>
  </div>
</div>`


这个问题有什么解决办法吗?

javascript angularjs modal-dialog bootstrap-modal
3个回答
0
投票

关闭第二个模态后,第一个模态以某种方式变得溢出-y:隐藏。即使它实际上设置为自动。 您可以使用 css 尝试这样

#myModalFirst {
    overflow-y:scroll;
}

0
投票

我离开了计时器,因为我们已经添加了一个,只需在末尾添加一个 .fadein(1000);延迟1秒进来。

$('#modalTrigger').on('click', function () {

    $('#modalBody').html($('#contentText').html()).fadein(1000);

});

$('#btnPrimaryModalAction').on('click', function () {
    $('#secondaryModal').modal('show'); 
});

0
投票

当 body 标签具有 class="modal-open" 时,模态滚动起作用。一般来说,当您关闭第二个模态时,该类已从 body 标记中删除,并且第一个模态滚动当时不起作用。因此,当第二个模式关闭时添加 class="modal-open" 应该可以正常工作。

$("#myModalSecond").on("hidden.bs.modal", function(){
  setTimeout(function(){
    $("body").addClass("modal-open");
  }, 500);
})

© www.soinside.com 2019 - 2024. All rights reserved.