代码之家  ›  专栏  ›  技术社区  ›  vava

如何使用火狐燃料在禁忌事件中获得标签?

  •  2
  • vava  · 技术社区  · 15 年前

    我正在写一个火狐扩展,我真的需要听一些禁忌事件,并获得一些关于打开标签的细节。但我不知道我该如何从 event 我的回调接收的对象。它在里面吗 event.data ?有没有办法检查这个物体?

    到目前为止我已经尝试过一些代码,但它不起作用:

    Application.activeWindow.events.addListener("TabOpen",
        function(event) {
            Application.console.log("TabOpen");
            var tab = event.data.target;
            Application.console.log(tab.uri);
        }
    );
    
    3 回复  |  直到 15 年前
        1
  •  1
  •   sdwilsh    15 年前

    在代码中,event.data将为您提供 BrowserTab object . 如果需要选项卡的当前URI,则需要 tab.uri.spec 对于字符串版本,或者只是 tab.uri 如果你想要一个 nsIURI object .

        2
  •  0
  •   user434917    15 年前

    以下是MDC的一个示例,但不使用燃料:

    // add event listener
    var container = gBrowser.mPanelContainer;
    container.addEventListener("DOMNodeInserted", exampleTabAdded, false);
    
    function exampleTabAdded(event)
    { // listening for new tabs
      if (event.relatedNode != gBrowser.mPanelContainer)
        return; //Could be anywhere in the DOM (unless bubbling is caught at the interface?)
    
      var browser;
        browser = event.target.childNodes[1];
      // browser is the XUL element of the browser that's been added
    }
    
        3
  •  0
  •       15 年前

    我已经在MDC中添加了一些新的内容,这些内容有助于实现这一点;下面的示例中提供了有关如何将选项卡对象从Tabbopen事件中拉出的信息:

    https://developer.mozilla.org/En/FUEL/Window

    我在那里的时候还做了一些其他的清理工作。希望这会有所帮助(尤其是在搜索索引刷新后)。