我使用Twitter引导模式作为向导窗口,并希望防止用户在模式外单击或按下escape时关闭它。相反,我希望它在用户按下完成按钮时关闭。我如何实现这个场景?
当前回答
如果使用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="#">
其他回答
您可以使用下面的代码
$.fn.modal.prototype.constructor.Constructor.DEFAULTS.backdrop = 'static';
更改默认行为。
你的代码是工作时,我点击出来的模态,但如果我使用html输入领域内的模态体,然后将光标集中在输入,然后按esc键模态已关闭。 点击这里
如果你需要在模态显示后进行设置,你可以使用@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>
只需将数据背景和数据键盘属性添加到打开的模型上的按钮。
这段代码将防止模式关闭,如果你点击模式之外。
$(document).ready(function () {
$('#myModal').modal({
backdrop: 'static',
keyboard: false
})
});
推荐文章
- CSS/HTML:什么是使文本斜体的正确方法?
- 我如何才能在表中应用边界?
- 如何使一个DIV不包装?
- CSS div元素-如何显示水平滚动条只?
- 将Dropzone.js与其他字段集成到现有的HTML表单中
- 使用“!”的含义是什么?重要的”?
- 避免浏览器弹出窗口拦截器
- 资源解释为样式表,但以MIME类型text/html传输(似乎与web服务器无关)
- 复选框输入是否只在被选中时才发布数据?
- 带引导的固定宽度按钮
- 是类型="文本/css"必须在<链接>标签?
- 如何将LaTeX与Markdown混合?
- 如何使<div>总是全屏?
- 如何中心div垂直内绝对定位的父div
- 创建一个可变长度的字符串,用重复字符填充