我使用Twitter引导模式作为向导窗口,并希望防止用户在模式外单击或按下escape时关闭它。相反,我希望它在用户按下完成按钮时关闭。我如何实现这个场景?
当前回答
<button class="btn btn-primary btn-lg" data-backdrop="static" data-keyboard="false" data-target="#myModal" data-toggle="modal">
其他回答
我使用这些属性,它可以工作,data-keyboard="false" data- background ="static"
如果使用JavaScript,那么:
$('#myModal').modal({
backdrop: 'static',
keyboard: false
})
在show的情况下
$('#myModal').modal({backdrop: 'static', keyboard: false}, 'show');
或HTML:
<a data-controls-modal="your_div_id" data-backdrop="static" data-keyboard="false" href="#">
如果你需要在模态显示后进行设置,你可以使用@Nabid解决方案。然而,有时你仍然需要允许一些方法关闭模式。假设你有一个带有really-close-the-modal类的按钮,它应该真正关闭模式,你可以使用下面的代码(jquery):
var closeButtonClicked = false;
$('.really-close-the-modal').on('click', function () {
closeButtonClicked = true;
});
$('#myModal').on('hide.bs.modal', function (e) {
if (!closeButtonClicked) {
e.preventDefault();
e.stopPropagation();
return false;
}
closeButtonClicked = false;
});
这不是很好的代码设计,但它帮助我在一个情况下,模态显示加载器动画,直到ajax请求返回,只有那时我才能知道是否需要配置模态,以防止“隐式”关闭。您可以使用类似的设计来防止在仍在加载时关闭模式。
只需在该模式中添加data- background ="static"和data-keyboard="false"属性即可。
Eg.
<a data-controls-modal="your_div_id" data-backdrop="static" data-keyboard="false" href="#">
也工作,data- background ="static"点击出来和data-keyboard="false"到Esc在你的div模式:
<div id="idModal" class="modal hide" data-backdrop="static" data-keyboard="false">
推荐文章
- $(window).width()与媒体查询不一样
- 在HTML中还有其他有用的空格码吗,比如半空格的 , em-spaces, en-spaces等等?
- 输入触发器按钮单击
- 禁用在角材质对话框区域外单击以关闭对话框(angular 4.0+版本)
- Angular 2模板中的标签是什么意思?
- 如何设置身体高度溢出滚动
- 我如何渲染一个列表选择框(下拉)与引导?
- 在输入type="number"时禁用webkit的旋转按钮?
- 如何在另一个元素之后添加一个元素?
- 我如何有效地解析HTML与Java?
- “ ”和“”有什么区别?
- 如何使用JavaScript代码获得浏览器宽度?
- 防止滚动条增加到Chrome页面的宽度
- 使用图像而不是单选按钮
- 我可以嵌套一个<按钮>元素内< >使用HTML5?