Firefox Addon:'promptService'不适用于Mozilla自己的示例代码

时间:2011-01-28 17:55:41

标签: firefox firefox-addon browser-extension

我使用创建工具栏按钮的Mozilla Addon Builder创建了扩展程序。没有对代码进行任何更改,该代码在当前稳定的FF 3中运行。

var mytestextension = {
  onLoad: function() {
    // initialization code
    this.initialized = true;
    this.strings = document.getElementById("mytestextension-strings");
  },

  onMenuItemCommand: function(e) {
    var promptService = Components.classes["@mozilla.org/embedcomp/prompt-service;1"]
                                  .getService(Components.interfaces.nsIPromptService);
    promptService.alert(window, this.strings.getString("helloMessageTitle"),
                                this.strings.getString("helloMessage"));
  },

  onToolbarButtonCommand: function(e) {
    // just reuse the function above.  you can change this, obviously!
    mytestextension.onMenuItemCommand(e);
  }
};

window.addEventListener("load", mytestextension.onLoad, false);

出现工具栏按钮,但点击(我明白应该触发onToolbarButtonCommand)它什么都不做。我在这里调试时有点模糊:这是我第一次尝试使用“hello world'还没有工作!

1 个答案:

答案 0 :(得分:1)

我相信this中的{p> onLoad实际上并不是指向你的对象。如果这是未经修改的代码,请file a bug about it(我已经为您选择了正确的组件),并且应该快速修复。