我有一个Boostrap模式,当用户访问网页时会弹出该模式。
我想仅在几秒钟内阻止用户通过点击模式外部来关闭该模式。在那之后,用户将重新获得以这种方式关闭它的能力。
在这一点上,我已经能够防止用户关闭模式,但是不幸的是,在设置的时间之后,我一直未能成功恢复这种行为。
到目前为止,我已经尝试通过以下方式禁用点击外功能:
$('#my-modal').modal({
backdrop: 'static',
keyboard: false
});
然后显示模态
$('#final-taunt-modal-1').modal('show');
到目前为止,一切都按预期进行,不允许用户关闭模式。 然后,我试图通过设置超时来关闭模式:
setTimeout( function() {
$('#my-modal').modal({
backdrop: true, // I've tried writing 'true' as a string with the same effect here.
keyboard: false
});
}, 4500);
结果是,用户确实可以通过键入“ ESC”使用键盘来关闭模式,但是当用户在其外部单击时,模式不会关闭。
我还试图通过HTML元素中的数据属性来设置模式选项:
<div tabindex="-1" data-backdrop="static" class="modal" id="my-modal" style="display: none;" aria-hidden="true">
然后提供如下所示的关闭模态的功能,只是为了获得相同的结果。
$('#my-modal').attr('data-backdrop', true)
有什么建议可以得到我想要的结果吗? (我正在使用Bootstrap 3.3.7)