0

我正在创建一个 Firefox 扩展,该扩展旨在自动在工具栏上放置一个按钮,单击该按钮时,将在新选项卡中打开一个网页。我使用了来自 Mozilla 开发网站的代码片段,但是当两者放在一起时,只有按钮放置有效。单击该按钮时不执行任何操作。

我对javascript不太了解,所以我不知道这里出了什么问题。整个扩展程序已通过所有 Mozilla 验证检查,没有错误和警告。

这是代码。您能提供的任何帮助将不胜感激。

CustomButton = {
1: function installButton(toolbarId, id, afterId) {
    if (!document.getElementById(id)) {
        var toolbar = document.getElementById(toolbarId);

        // If no afterId is given, then append the item to the toolbar
        var before = null;
        if (afterId) {
            let elem = document.getElementById(afterId);
            if (elem && elem.parentNode == toolbar)
                before = elem.nextElementSibling;
        }

        toolbar.insertItem(id, before);
        toolbar.setAttribute("currentset", toolbar.currentSet);
        document.persist(toolbar.id, "currentset");
    }

if (firstRun) {
    installButton("nav-bar", "my-extension-navbar-button");
}
},

2: function () {

const url = "http://www.mysite.com/"

document
    .getElementById("content")

.webNavigation

.loadURI(url, 0, null, null, null)

}
}

我对此不是很敏锐,这就是为什么我在这里提出问题而不是搜索其他示例,这对我来说毫无意义。如果有人能告诉我如何修改这个特定的代码来做我需要做的事情,我将不胜感激。

4

1 回答 1

0

这将从将于 2014 年 4 月发布的 FF 29 开始工作 它在工具栏中添加了一个操作按钮,一旦您单击它,它将在新选项卡中加载http://www.example.com站点;如果您更喜欢加载新窗口,请改用 require("sdk/windows") 。

使用插件 SDK

var ui = require("sdk/ui");
var action_button = ui.ActionButton({
    id: "my-button",
    label: "Open example page!",
    icon: "./icon.png",
    onClick: function() {
        require("sdk/tabs").open("http://www.example.com");
    }
});
于 2014-03-26T16:40:17.763 回答