使用两个模态时,在第二个模态关闭时,第一个模态的滚动将隐藏。
可以看到一个例子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>`
这个问题有什么解决办法吗?
关闭第二个模态后,第一个模态以某种方式变得溢出-y:隐藏。即使它实际上设置为自动。 您可以使用 css 尝试这样
#myModalFirst {
overflow-y:scroll;
}
我离开了计时器,因为我们已经添加了一个,只需在末尾添加一个 .fadein(1000);延迟1秒进来。
$('#modalTrigger').on('click', function () {
$('#modalBody').html($('#contentText').html()).fadein(1000);
});
$('#btnPrimaryModalAction').on('click', function () {
$('#secondaryModal').modal('show');
});
当 body 标签具有 class="modal-open" 时,模态滚动起作用。一般来说,当您关闭第二个模态时,该类已从 body 标记中删除,并且第一个模态滚动当时不起作用。因此,当第二个模式关闭时添加 class="modal-open" 应该可以正常工作。
$("#myModalSecond").on("hidden.bs.modal", function(){
setTimeout(function(){
$("body").addClass("modal-open");
}, 500);
})