防止Bootstrap模态消失,当点击外面或按逃生?
我正在使用Twitter Bootstrap模式作为向导窗口,并希望阻止用户在单击模式外或按下转义时closures它。 相反,我希望它在用户按下完成button时closures。 我怎么能实现这种情况?
如果使用JavaScript,则:
$('#myModal').modal({ backdrop: 'static', keyboard: false })
如果HTML:
<a data-controls-modal="your_div_id" data-backdrop="static" data-keyboard="false" href="#">
在你的div模式data-backdrop="static"
工作, data-backdrop="static"
以点击和data-keyboard="false"
Esc的:
<div id="idModal" class="modal hide" data-backdrop="static" data-keyboard="false">
只需将
data-backdrop="static"
和data-keyboard="false"
属性添加到该模式即可。
例如。
<a data-controls-modal="your_div_id" data-backdrop="static" data-keyboard="false" href="#">
您可以使用下面的代码
$.fn.modal.prototype.constructor.Constructor.DEFAULTS.backdrop = 'static';
改变默认行为。
jQuery('#modal_ajax').modal('show', {backdrop: 'static', keyboard: false});
<button class="btn btn-primary btn-lg" data-backdrop="static" data-keyboard="false" data-target="#myModal" data-toggle="modal">
如果你需要禁用点击外部,但启用按下转义
$( '#myModal')。模态({ 背景:“静态”,/ /这禁用点击外部事件 keyboard:true //这是键盘事件 })
你的代码正在工作,当我点击侧模式,但如果我使用模态身体内的HTML input
字段然后集中你的光标在该input,然后按esc
键模式已closures。 点击这里
以下脚本适用于我:
// prevent event when the modal is about to hide $('#myModal').on('hide.bs.modal', function (e) { e.preventDefault(); e.stopPropagation(); return false; });
我使用这些属性,它的工作原理, data-keyboard="false" data-backdrop="static"
<div class="modal show"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <h4 class="modal-title">Modal title</h4> </div> <div class="modal-body"> <p>One fine body…</p> </div> </div><!-- /.modal-content --> </div><!-- /.modal-dialog -->
我认为这codepen可以帮助你防止模式closuresCSS和引导