我希望在用户关闭另一个模式后立即显示一个引导模式。所以我使用以下代码尝试这样做:
currentModal.modal('hide').on('hidden.bs.modal', function (){
nextModal.modal('show');
});
一切都正常发生。第一个模态关闭,下一个模态出现。
但是,class="modal-open"
应该在body
元素中滚动才能正常工作,不会发生什么。显示第二个模态后,该类将从body
消失。
我做错了吗?
答案 0 :(得分:0)
如果没有看到这个,我的猜测是有某种回调处理程序删除了“modal-open”类。您可以尝试手动添加它:
currentModal.modal('hide').on('hidden.bs.modal', function (){
nextModal.modal('show');
body.addClass('modal-open');
});
但是,您是否考虑过data-dismiss
和data-target
而不是覆盖Bootstrap?
答案 1 :(得分:0)
我做错了吗?
我不这么认为。 large number of issues on this topic表明这不是设计得很好,或者不是为了支持这一点。相关的错误是 Multiple modals fix #5022,Multiple modals #11872和 .modal-open is not applied to body when "switching" to another modal #11865,@ mdo明确说明了这一点:
是的,我们不会支持多种模态。
那该怎么办呢?
小超时肯定会有所帮助:
currentModal.modal('hide').on('hidden.bs.modal', function (){
setTimeout(function() {
nextModal.modal('show');
}, 100);
});