2014-06-07 202 views

回答

1

使用nsIBrowserSearchService枚舉nsISearchEngine實例,又名。搜索引擎。

var bss = Cc["@mozilla.org/browser/search-service;1"]. 
      getService(Ci.nsIBrowserSearchService); 
bss.init(function() { 
    for (var e of bss.getEngines() /* nsISearchEngine */) { 
    console.log(e.name, e.description); 
    } 
    console.log("default:", bss.defaultEngine.name); 
    console.log("current:", bss.currentEngine.name); 
}); 

如果您使用的SDK,你可能需要在XUL

let {Cc, Ci} = require("chrome"); 

browser.xul覆蓋加載項要細,在XUL否則一個共同的模式插件是這樣的:

let {classes: Cc, interfaces: Ci} = Components; 
+0

'ReferenceError:抄送未定義' 怎麼辦? – look997

+0

*編輯1 *添加關於'Cc' /'Ci' – nmaier

+0

我喜歡這個。我們在這個問題上得到了3個不同的答案,它真的很高興看到這種變化。 :) https://ask.mozilla.org/question/758/api-search-engines-the-list-of-search-engines/ – Noitidart