我有2个引导程序模态。当我打开第一个时,垂直滚动条可以正常工作。然后,我从第一个模态的内部有一个选项,它删除了它的不透明度,并打开了第二个。通过关闭第二个模态,我回到了我的第一个模态,但是要能够滚动到模态,我只能滚动到背景主体。

注意:只有在我打开第二个模态时才会发生。

我使用JQuery来操作模态。

一些代码:

$('#button').click(function(){
    $('#myModal2').modal({
        show: 'true'
    });

});

$('#myModal2').on('shown.bs.modal', function() {
   $('#myModal').css('opacity', 0);
});

$('#myModal2').on('hidden.bs.modal', function() {
   $('#myModal').css('opacity', 1);
});


在此先感谢您的帮助。

更新:

我通过添加到引导源来临时解决我的问题:

.modal { overflow: auto !important; }


它有效,但是现在我可以同时滚动主体和模态。

我愿意接受其他建议。

最佳答案

我遇到了同样的问题。我找到了解决方案。当您打开模态时,引导程序会向主体添加“ modal-open”类。如果关闭该模式,引导程序将其删除。当您有2个模态时,第二个模态将删除需要第一个模态的主体的“模态开放”类。

要解决此问题,必须在打开第二个模态之前检查第一个模态是否打开。我检查模态开放类。

var firstModalOpen = $("body").hasClass("modal-open");
$("#second-modal").modal("show");


当第二个模式关闭时,您检查第一个模式是否已打开,并将modal-open类添加到主体。

$("#second-modal").on('hidden.bs.modal', function()
{
    if (firstModalOpen)
        $("body").addClass("modal-open");
});

关于jquery - 我打开和关闭第二个模式时,Bootstrap的模式-垂直滚动条对于第一个模式消失了,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30204632/

10-12 07:11