すべての機能に対してブラウザー アクションがあると仮定すると、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
}
background.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)
});
さらに情報が必要な場合はお知らせください。