Javascript 如何访问容器搜索Firefox插件
如何访问在地址栏中写入url时显示的容器?我有一个搜索引擎,我只需要在面板上显示一个图标和一个url 我只能得到一个基本的javascriptJavascript 如何访问容器搜索Firefox插件,javascript,firefox,Javascript,Firefox,如何访问在地址栏中写入url时显示的容器?我有一个搜索引擎,我只需要在面板上显示一个图标和一个url 我只能得到一个基本的javascript function createMenuItem(engines) { for (let engine of engines) { browser.menus.create({ id: engine.name, title: engine.name, contexts: ["selection"] });
function createMenuItem(engines) {
for (let engine of engines) {
browser.menus.create({
id: engine.name,
title: engine.name,
contexts: ["selection"]
});
}
}
browser.search.get().then(createMenuItem);
browser.menus.onClicked.addListener((info, tab) => {
browser.search.search({
query: info.selectionText,
engine: info.menuItemId
});
});
//php get variable code
if(isset($_GET["term"])) {
$term = $_GET["term"];
} else {
header('location: '.$url.'');
}
//json
"search_url": "https://127.0.0.1/search/search?term={term}"
结果
我试过了
${term}
$term
{term}
term
您会注意到,
browser.search
名称空间只有两个功能:和,但没有添加或修改搜索引擎的功能
而是在扩展名的manifest.json
文件中将搜索引擎声明为
Mozilla提供了一个如何添加搜索引擎的示例。示例中包含的manifest.json本身就说明了这一点
manifest.json
谢谢,我需要等待22个小时才能再次授予奖励,我在获取地址栏中写入的文本时遇到问题,请尝试{term}${term}$term,我刚刚添加了phpcode@qwerty您的url必须是
https://127.0.0.1/search/search?term={searchTerms}
Firefox正在查找字符串{searchTerms}
,如果找到,则将其替换为用户输入的字符串。
{
"manifest_version": 2,
"name": "Discogs search engine",
"description": "Adds a search engine that searches discogs.com",
"version": "1.0",
"applications": {
"gecko": {
"strict_min_version": "55"
}
},
"chrome_settings_overrides": {
"search_provider": {
"name": "Discogs",
"search_url": "https://www.discogs.com/search/?q={searchTerms}",
"keyword": "disc",
"favicon_url": "https://www.discogs.com/favicon.ico",
"is_default": false,
"encoding": "UTF-8"
}
}
}