繁体   English   中英

打开时更改Bootstrap模态背景设置

[英]Change Bootstrap modal backdrop settings while open

我正在尝试将我的模态的背景设置更改为“静态”作为对事件的响应,以便它变得不可忽略。 我在点击模态内的按钮后设置了$('#myModal').modal({ backdrop: 'static',keyboard:false }) ,但没有运气。

我想要的效果类似于nakupanda的bootstrap-dialog的效果(参见Manipulating Buttons部分,当dialog.setClosable(true);在点击'Click to disable and spin'按钮时触发,模态不再可关闭)

请看这个jsfiddle

我知道这个问题已在这里提出但它没有正确的答案。 我知道这有可能以某种方式,但我无法分析nakupanda的代码。

尝试更改modal的选项如下:

$('#myModal').data('bs.modal').options.backdrop = 'static';

这是工作示例

对于试图在v4上执行此操作的任何人,您需要更改:

$("#myModal").data('bs.modal').options.backdrop = 'static';

$("#myModal").data('bs.modal')._config.backdrop = 'static';

为什么不在页面加载时使用选项而不是单击按钮来初始化模态?

只需定义一个文件就绪fn并将下面的代码放入其中。

$('#myModal').modal({
    backdrop: 'static',
    keyboard: false
  })

你可以试试这样的东西: http//codepen.io/bwobst/pen/GrKBKy?edit = 1010

$('#open-modal').click(function(evt) {
  $('#myModal').modal({backdrop: 'static'});
  $('.modal button').prop('disabled', true);
});

当您单击“打开模态”按钮时,它会将背景设置为静态并禁用模式中的按钮。

我想出了一个解决方案。 问题是即使您将背景设置为静态,仍然有一个点击监听器。

我的解决方案在这里。 https://jsfiddle.net/25zbf094/2/

JavaScript的

$('#makeIndismissable').click(function(){
  $('#myModal').prop('onclick',null).off('click');
});

$('#close').click(function(){
    $('#myModal').modal("hide")
})

我保持HTML基本不变,但在关闭按钮中添加了“关闭”的ID。 正如您在上面所看到的,您仍然可以通过按右上角的X来关闭模态。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM