如何访问在地址栏中写入 url 时出现的容器?我有一个搜索引擎,我只需要在面板中显示一个图标和一个 url
研究我只能得到一个基本的javascript
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
命名空间只有两个函数:get()
和 search()
但无需添加或修改搜索引擎。
相反,您将搜索引擎声明为 search_provider
在您的扩展程序的 manifest.json
文件中。
Mozilla 提供了一个如何添加搜索引擎的例子here .示例中包含的 manifest.json 不言自明。
list .json
{
"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"
}
}
}
关于javascript - 如何访问容器搜索 Firefox 附加组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57156058/