【问题标题】:uibModal disable backdrop completely and allow background clickinguibModal 完全禁用背景并允许背景点击
【发布时间】:2018-08-15 08:52:40
【问题描述】:
我有一个可拖动的模态窗口。我想完全禁用背景。我知道 uibModal 有一个背景属性,我可以设置 true/false 或 static - 但这对我来说还不够,我希望背景中的 html 内容仍然可以点击,例如 Google 表格帮助模式窗口 - 你可以打开它,拖动它,仍然在后台工作。
如何完全禁用背景并在模式打开的情况下使背景中的内容可点击?使用 uibModal 可以做到这一点,还是我应该只在普通的 javascript/iframe 中创建一个模式窗口?
我可以使用这个 CSS 使背景可点击:
.modal {
pointer-events: none;}
.modal-backdrop {
display: none;}
这样做的问题是它杀死了可拖动功能,因为您不能再点击模态框(只有背景是可点击的)。
【问题讨论】:
标签:
angularjs
bootstrap-modal
angular-ui-bootstrap
【解决方案1】:
我用 jQuery UI 解决了我的问题
$(document).ready(function(){
$("#div-name").draggable({ containment: "body", scroll: false, handle:'#header' });
})
正如你们所看到的,我为要拖动的 div 设置了我的 ID,我还为页面的主体设置了一个包含,这样人们就无法将我的 div 移出视图(主体)并转身关闭滚动。之后我设置了一个句柄 - 这是你设置 div 的可拖动部分的地方(如果你希望整个 div 可以拖动,只需删除句柄选项) - 我将 #header 设置为我的句柄(顶部菜单栏) - 这个人们可以在可拖动的 div 内单击而不会意外移动它。如果你想让它为你工作,你只需要 jQuery 和 jQueryUI。
这就像一个魅力,我很高兴!