Bootstrap:如何防止打开模态顶部的模态对话框堆叠

时间:2015-11-12 22:18:17

标签: javascript jquery css twitter-bootstrap

我有一个模态对话框,当有人退出视口时会触发,以尝试收集他们的电子邮件地址。这主要是由于名为Ouibounce的插件。

现在的问题是,当用户点击注册或登录时,页面周围会散布一些其他模态。

如果您已打开注册/登录模式并退出视口并且注册/登录仍然打开,则A'解锁'模态立即弹出任何已打开的模态。

有没有办法阻止使用常规JS属性进行模态堆叠?我尝试过操纵CSS,但由于两种模态都存在于相同的页面范围内,所以几乎没有成功。

1 个答案:

答案 0 :(得分:0)

您可以使用callback function

  

您可以使用callback选项添加一个回调函数,该函数将在触发Ouibounce后运行。

如果您使用bootstrap-modal,则每个bootstrpmodal都有默认的modal类,因此无需定位每个引导模式id,并且可以通过JavaScript关闭引导模式

$('.modal').modal('hide');

当触发Ouibounce时,可以使用并关闭所有打开的模态(无论打开多少个引导模态)

ouibounce(document.getElementById('ouibounce-modal'), {
    callback: function() { 
        $('.modal').modal('hide'); //Close all open modals
    }
});

Fiddle

如何检查小提琴:检查小提琴是否有点棘手,先将鼠标光标移至result section内,然后将光标直接移至css section.

打开bootstrap模态,如果你喜欢你可以从旧模态打开新模态然后将鼠标光标直接移动到CSS部分,Ouibounce模态将被触发并且bootstrap模态将被关闭。 / p>