0
我想编写一个简单的Firefox插件来保护我的搜索引擎,导致每次重新启动firefox时都会搜索到searchengine,并且还会将keyword.URL设置为u-search。Firefox插件访问配置
我试过插件BrowserProtect,但它不能保护keyword.URL! 所以我开始在builder.addons.mozilla.org上创建一个插件,因为它很容易使用。
我的代码看起来像这样(从代码片段加在一起):
var Widget = require("widget").Widget;
var tabs = require('tabs');
exports.main = function() {
new Widget({
id: "searchengineprotect",
label: "SearchEngineProtect",
contentURL: "http://www.mozilla.org/favicon.ico",
onClick: function(event) {
var {Cc, Ci} = require("chrome");
var prefs = Cc["@mozilla.org/cookieService;1"].getService(Ci.nsIPrefBranch);
prefs.setCharPref("keyworld.URL", "http://google.de/search?q=");
}
});
};
我只是改变了代码的“点击”功能。
但是,当我在Firefox中点击小按钮控制台报告这个错误:如果你知道我怎么能解决这个错误甚至如何我可以从改变搜索引擎停止火狐
Fehler: searchengineprotect: An exception occurred.
NS_ERROR_XPC_GS_RETURNED_FAILURE: Component returned failure code: 0x80570016 (NS_ERROR_XPC_GS_RETURNED_FAILURE) [nsIJSCID.getService]
undefined 35
Traceback (most recent call last):
File "resource://jid0-zg1n2skgq7y6lrq6hbl96hno8ke-at-jetpack/searchengineprotect/lib/main.js", line 35, in exports.main/<.onClick
var prefs = Cc["@mozilla.org/cookieService;1"].getService(Ci.nsIPrefBranch);
File "resource://jid0-zg1n2skgq7y6lrq6hbl96hno8ke-at-jetpack/addon-sdk/lib/sdk/deprecated/events.js", line 153, in _emitOnObject
listener.apply(targetObj, params);
File "resource://jid0-zg1n2skgq7y6lrq6hbl96hno8ke-at-jetpack/addon-sdk/lib/sdk/deprecated/events.js", line 123, in _emit
return this._emitOnObject.apply(this, args);
File "resource://jid0-zg1n2skgq7y6lrq6hbl96hno8ke-at-jetpack/addon-sdk/lib/sdk/widget.js", line 282, in _onEvent
this._emit(type, eventData);
File "resource://jid0-zg1n2skgq7y6lrq6hbl96hno8ke-at-jetpack/addon-sdk/lib/sdk/widget.js", line 431, in WidgetView__onEvent
this._baseWidget._onEvent(type, this._public);
File "resource://jid0-zg1n2skgq7y6lrq6hbl96hno8ke-at-jetpack/addon-sdk/lib/sdk/widget.js", line 850, in WC_addEventHandlers/listener/<
self._widget._onEvent(EVENTS[e.type], null, self.node);
File "resource://jid0-zg1n2skgq7y6lrq6hbl96hno8ke-at-jetpack/addon-sdk/lib/sdk/timers.js", line 31, in notify
callback.apply(null, args);
左右。 ..会很棒! :)
只是一个想法 - “keyword.URL”而不是“keyworld.URL”。它可以这么简单吗? – 2013-09-02 07:51:22