javascript - nsIDOMWindowUtils.isInModalState() 不工作

标签 javascript firefox firefox-addon xpcom

我得到窗口的 utils 是这样的:

var utils = Services.wm.getMostRecentWindow('navigator:browser').
            QueryInterface(Components.interfaces.nsIInterfaceRequestor).
            getInterface(Components.interfaces.nsIDOMWindowUtils);

然后运行这段代码说它不是一个函数:

Services.prompt.alert(null, 'is modal?', utils.isInModalState())
//Exception: utils.isInModalState is not a function

即使它说 in the documentation是的。

我也无法运行这段代码:

utils.enterModalState()

它运行没有错误,但窗口没有进入或离开模式状态。

最佳答案

.isInModalState 属性实际上是 tagged [noscript] ,因此它在 Javascript 中不可用,仅在 C++ 中可用。

.enterModalState() 并不像您认为的那样。它不会使窗口 UI 模式(如警报对话框)。它只是在本质上暂停了窗口中的脚本和事件处理。

关于javascript - nsIDOMWindowUtils.isInModalState() 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24684696/

相关文章:

javascript - 将对象附加到具有绝对位置的单击位置

javascript - 使用 javascript 突出显示代码示例中的语法。

javascript - 如何在PHP中向数据库提交多个表单?

javascript - 使用 Firefox 的 Downloads.jsm 在观察文件的同时一次下载一个文件?

javascript - 在 JavaScript 中从服务器获取响应

android - Firefox Android 上的 scrollLeft 错误计算

css - 如何在不删除 Firefox/IE 轮廓焦点的情况下自定义输入边框

firefox - 为多个 SDK 版本开发 Firefox 插件

firefox - 有人知道如何从 Firefox 运行可执行文件吗?

javascript - 从附加 SDK 面板操作当前文档