JavaScript 模态对话框可以仅对选项卡是模态的,而不是对整个浏览器窗口吗?

StackOverflow https://stackoverflow.com/questions/287242

  •  08-07-2019
  •  | 
  •  

现代浏览器具有多选项卡界面,但 JavaScript 功能 window.showModalDialog() 创建一个阻止的模式对话框 全部 选项卡的数量。

我想知道是否有一种方法可以创建一个模式对话框,仅阻止在其中创建它的选项卡?

有帮助吗?

解决方案

你可以使用一个更像'类似Ajax'的模态对话框,这些对话框只是绝对定位的div,浮动在其他所有东西之上。

这些是“文档”的模态,而不是浏览器。

比如看看它这个jQuery插件

P.S。 showModalDialog()是仅限IE的调用,因此您可能不想完全使用它。

其他提示

没有。可以想象,IE8 的“松散耦合”在某些时候可能会出现这样的行为,但在当前的测试版中却并非如此。

我赞同米歇尔的建议。伪模态对话的工作方式是模糊页面的其余部分,在顶部浮动一个 div,并在完成时回调脚本,两者都是:

  • 比真正的模式对话框更有用/更不烦人
  • 兼容任何浏览器

通常要避免 showModalDialog/showModelessDialog 本身。

Firefox 3支持window.showModalDialog (但它也会阻止所有标签)。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top