0
我有一個插件,帶有一個按鈕,可以打開一個帶有幾個按鈕的面板。當一個按鈕被按下時,它是假定來更改keyword.URL
首選項,但它不是。Firefox插件生成器 - 無法獲取內容腳本的工作
這裏是main.js:
data = require("self").data
var panel = require("panel").Panel({
height: 135,
width: 260,
contentURL: data.url("popup.html"),
contentScriptFile: data.url("clicklisten.js"),
onMessage: function(contentScriptMessage) {
require("preferences-service").set('keyword.URL', contentScriptMessage);
}
//I think the problem is right there, but i have no idea why.
});
var button = require("widget").Widget({
id: "search-engine-button",
label: "Set search engine",
contentURL: data.url("Refresh.ico"),
panel: panel
});
下面是HTML按鈕的一個示例:
<button class="searchButton" id="addons" _keywordURL="https://addons.mozilla.org/en-US/firefox/search/?q=">Add-ons</button>
這是clicklisten.js(內容腳本):
// Add event listener
var buttons = document.getElementByClassName("searchButton");
for (var i = 0; i < buttons.length; i++)
buttons[i].addEventListener("click", changekeywordurl, false);
// Send a message to the extension if a button is clicked
function changekeywordurl(event)
{
var button = event.target;
self.postMessage(button.getAttribute("_keywordURL"));
}
我覺得我已經嘗試了所有我能想到的,但我無法得到這個工作。
謝謝!我一定弄錯了一些......更奇怪了。 – Ian 2012-04-29 19:15:02