JS的showModalDialog不工作在chrome作为模态
JS showModalDialog not working in chrome as modal
我在我的应用程序中使用showModalDialog()
,让用户查看来自不同来源的文章作为模态弹出。
它在FF和IE中工作得很好,但在chrome中它不表现为模态,我仍然可以在父窗口上单击其中的任何元素。
我想让它像IE和FF一样工作。
我看了一些变通
1)将onfocus
事件设置在父窗口上,并再次将子窗口聚焦在它上面。
<script type="text/javascript">
setInterval(checkFocus, 10);
var mywindow;
function openModal() {
var a = new Array;
a[0] = 1;
a[1] = 4;
mywindow = window.showModalDialog(myurl,
a, "dialogwidth: 1000; dialogheight: 700; resizable: yes;center : yes;");
}
function checkFocus() {
if (mywindow != null && mywindow != undefined) {
if (window.focus) {
mywindow.focus();
}
}
}
</script>
,但这似乎不像预期的那样工作。
2)设置onblur
事件在子窗口,再次聚焦自己
这个解决方案我已经从一些在线资源阅读。我可以应用这个解决方案,如果只有子窗口是自定义页面从我的域,但作为我的子窗口可以从任何domain
的任何url
,这是不适用于我的情况。
我需要让它工作,谁能在这方面给我建议吗?
Chrome在实现上有严重的bug。最重要的是,Chrome显示的窗口不是模态的(见Chromium bug #16045),这意味着,用户可以在处理模态对话框之前与原始窗口进行交互。
相关文章:
- 我想使用模态通过php文件发送邮件,并且我希望在提交关闭后关闭pop
- 打开一个模态并将其链接到AngularJS中的指令
- SemanticUI模态not onDeny/onApprove事件未激发
- 有没有比在app.js上绑定模块名称更好的方法来动态加载视图模型和视图以显示模态
- 如何通过所选索引(AngularJS)在模态弹出窗口中显示数据
- 包含数据库中相关信息的开放模态
- bootstrap消除模态并显示另一个模态
- 模态提示-如何重写此代码
- 模态框无法正常工作
- 将数据传递给由服务创建的Ionic模态
- iframe模态无法关闭
- 点击AngularJS模态窗口捕捉背景事件
- jqueryajax调用是复制url,当在模态视图之后在外部js文件中进行调用时
- 使用模态对话框(JQuery)编辑函数
- 在模态对话框中打开链接(如Chrome Web Store)
- Chrome扩展:保留模态窗口时,页面刷新
- 模态RadWindow在Chrome中不关闭
- JS的showModalDialog不工作在chrome作为模态
- 错误加载youtube视频在模态对话框与chrome
- 模态对话框与Mozilla工作,但不与Chrome工作