我使用Twitter引导模式作为向导窗口,并希望防止用户在模式外单击或按下escape时关闭它。相反,我希望它在用户按下完成按钮时关闭。我如何实现这个场景?
当前回答
如果你需要在模态显示后进行设置,你可以使用@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请求返回,只有那时我才能知道是否需要配置模态,以防止“隐式”关闭。您可以使用类似的设计来防止在仍在加载时关闭模式。
其他回答
<button class='btn btn-danger fa fa-trash' data-toggle='modal' data-target='#deleteModal' data-backdrop='static' data-keyboard='false'></button>
只需将数据背景和数据键盘属性添加到打开的模型上的按钮。
$('#modal').modal({backdrop: 'static', keyboard: false}, 'show');
也工作,data- background ="static"点击出来和data-keyboard="false"到Esc在你的div模式:
<div id="idModal" class="modal hide" data-backdrop="static" data-keyboard="false">
下面的脚本适合我:
// prevent event when the modal is about to hide
$('#myModal').on('hide.bs.modal', function (e) {
e.preventDefault();
e.stopPropagation();
return false;
});
你也可以在引导模型中使用直接。
<div class="modal fade" id="myModal" data-keyboard="false" data-backdrop="static">
推荐文章
- 如何以编程方式触发引导模式?
- 为什么我的CSS3媒体查询不能在移动设备上工作?
- 下一个元素的CSS选择器语法是什么?
- 我如何用CSS跨浏览器绘制垂直文本?
- 如何获得box-shadow在左侧和右侧
- 如何使用Twitter的Bootstrap内联显示列表
- 相对定位一个元素,而不占用文档流中的空间
- 如何在jQuery检索复选框值
- 禁用身体滚动
- 如何在删除前显示确认消息?
- 在一个CSS宽度的小数点后的位置是尊重?
- 我怎么能选择一个特定的类的最后一个元素,而不是父里面的最后一个孩子?
- 反应:为什么当道具改变时子组件不更新
- 我怎么能检查html元素,从DOM消失失去焦点?
- 在Atom编辑器中是否有格式化HTML的命令?