尝试访问Thunderbird-tabmail不起作用

时间:2015-10-06 13:32:05

标签: thunderbird thunderbird-addon lightning thunderbird-lightning

我想从日历代码中打开一个带有gloda对话的新标签。

我从错误控制台收到错误: 窗口未定义(或文档未定义),取决于我用于访问tabmail的两个中的哪一个:

        let tabmail = window.document.getElementById("tabmail");
        let tabmail = document.getElementById("tabmail");

如果js文件包含在overlay xul文件中,则代码可以正常工作。

但是我想在我的代码中使用xul之外的它。 在我的日历代码中的某处(在我的' addevent'中),相同的代码会引发错误。 此代码最初是通过右键单击电子邮件调用的,但是深入到日历代码中的几层。

在MDN中,我读到那个窗口是全局的?那么添加标签需要做什么? 如果正确引用了tabmail,则此部分有效:

      tabmail.openTab("glodaList", {
      collection: queryCollection,
      message: aCollection.items[0],
      title: tabTitle,
      background: false
    });

那么如何获得tabmail的参考资料呢?

感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

在发布之前尝试并查看代码真的有一段时间后,它只用了大约一段时间。提交问题后20分钟意外找到解决方案..

在mxr上浏览mailutils时,我找到了一些函数中的解决方案:

    mail3PaneWindow = Services.wm.getMostRecentWindow("mail:3pane");
    if (mail3PaneWindow)  var tabmail = mail3PaneWindow.document.getElementById("tabmail");