xle*_*les 5 google-chrome-extension
我正在编写一个谷歌浏览器扩展程序,特别是一个轻量级的EPUB阅读器,其目标是与Chrome中内置的PDF阅读器一样灵活.
我想弄清楚的是,如果你单击一个通常会强制你将epub文件保存到磁盘的链接,你可以以某种方式自动触发扩展.
在一个完美的世界中,每个到epub文件的链接都会指向a file.epub,你可以使用内容脚本将其指向扩展,但不幸的是,事实并非如此.所以我想的是,在HTTP get请求至少返回头部之后必须触发它,并通过一个chrome.webRequest或者某个东西触发mime类型.
您可以从提供给您的文件的mime类型中调用Google Chrome扩展程序吗?
假设您对所有功能都有浏览器操作,您可以使用chrome.webRequest.onHeadersReceived、chrome.browserAction.enable()和chrome.browserAction.disable()检测并启用\禁用扩展
伪代码
清单.json
{
"name": "Detect Mime type",
"version": "1.0",
"description": "Detecting Mime type and enabling browser action",
"permissions": ["webRequest", "webRequestBlocking",
"<all_urls>"],
"background": {
"scripts": ["background.js"]
},
"browser_action":{
"default_popup":"popup.html", // Use you related code here
"default_icon":"icon.jpg"
},
"manifest_version": 2
}
Run Code Online (Sandbox Code Playgroud)
背景.js
chrome.webRequest.onHeadersReceived.addListener(function (object){
// Do your code for related header(s)
//Invoke chrome.browserAction.enable(integer tabId) or chrome.browserAction.disable(integer tabId)
},{urls: ["<all_urls>"]});
chrome.tabs.query({"status":"complete"}, function(tabs){
//Disable all browser actions using chrome.browserAction.disable(integer tabId)
});
Run Code Online (Sandbox Code Playgroud)
如果您需要更多信息,请与我们联系。
| 归档时间: |
|
| 查看次数: |
970 次 |
| 最近记录: |