首页 > 解决方案 > Outlook 插件:'window.open(url)' 有效但返回 null

问题描述

我有一个带有 2 个选项的 Outlook 插件:1 个用于操作的按钮 + 1 个用于任务窗格的按钮

在任务窗格代码(.js 文件)中,我打开一个窗口并获取参考,并在需要时将其关闭:

var myWindow = window.open(sUrl,...) // myWindow 有效且对话框正确打开

在动作代码(.js 文件)中,如果我使用相同的代码,myWindow 为空。但是,对话框已正确打开并显示 sUrl 页面)

有什么区别?如何在第二种情况下获取窗口对象以关闭它?


编辑:(回复评论答案)

  1. 我在 Chrome 和 Edge 浏览器中进行了测试:在两者中我都收到了 null

  2. 它总是发生在我身上

  3. 我有这样的功能:

          function openDialog(sUrl) {
             var w = 800;
             var h = 500;
             var left = (screen.width / 2) - (w / 2);
             var top = (screen.height / 2) - (h / 2);
             var dialog = window.open(sUrl, "window1", 'width=' + w + ',height=' + h + ',scrollbars=NO, top=' + top + ', left=' + left);
             console.log("Dialog: " + dialog);
         }
    

该对话框始终显示并正常运行,但是:


在此先感谢,迭戈

标签: nulloutlook-web-addinswindow.open

解决方案


推荐阅读