浏览器扩展:动态禁用内容脚本
browser extension: dynamically disable content script
我有一个浏览器扩展程序,其中包含在所有 url 上运行的内容脚本。
{
"name": "foobar",
"version": "0.1.0",
"permissions": [],
"manifest_version": 2,
"content_scripts": [
{
"matches": ["<all_urls>"],
"js": ["content.js"]
}
]
}
我现在想允许用户禁用某些网站上的内容脚本,例如,让她点击弹出窗口中的按钮。我该怎么做?
从后台脚本(具有 "activeTab"
和 "https://*/"
权限),可以使用 chrome.tabs.executeScript
:
注入任何脚本
chrome.runtime.onMessage.addListener(function(request, sender, sendResponse) {
const inject = /.*:\/\/.*whosebug.com\/.*/.test(request.url);
if (inject) {
chrome.tabs.executeScript({
file: 'foobar.js'
});
}
// Send an empty response to avoid warning
sendResponse({});
});
我有一个浏览器扩展程序,其中包含在所有 url 上运行的内容脚本。
{
"name": "foobar",
"version": "0.1.0",
"permissions": [],
"manifest_version": 2,
"content_scripts": [
{
"matches": ["<all_urls>"],
"js": ["content.js"]
}
]
}
我现在想允许用户禁用某些网站上的内容脚本,例如,让她点击弹出窗口中的按钮。我该怎么做?
从后台脚本(具有 "activeTab"
和 "https://*/"
权限),可以使用 chrome.tabs.executeScript
:
chrome.runtime.onMessage.addListener(function(request, sender, sendResponse) {
const inject = /.*:\/\/.*whosebug.com\/.*/.test(request.url);
if (inject) {
chrome.tabs.executeScript({
file: 'foobar.js'
});
}
// Send an empty response to avoid warning
sendResponse({});
});