Я устал от длинных ожидающих рассмотрения сообщений в Chrome Интернет-магазине и решил использовать разрешение activeTab
вместо tabs
и <all_urls>
(мой сценарий содержимого все еще соответствует <all_urls>
).
манифест. json был:
"content_scripts": [
{
"matches": [
"<all_urls>"
],
"js": [
"content/index.js"
],
"run_at": "document_start",
"all_frames": true,
"match_about_blank": true
}
],
"permissions": [
"storage",
"tabs",
"<all_urls>"
],
и теперь:
"content_scripts": [
{
"matches": [
"<all_urls>"
],
"js": [
"content/index.js"
],
"run_at": "document_start",
"all_frames": true,
"match_about_blank": true
}
],
"permissions": [
"storage",
"activeTab"
],
Но теперь, когда приложение установлено или активировано, Сценарий содержимого внедряется во вновь созданные вкладки, но не вводится в старые вкладки.
Нажатие на всплывающее окно (или удаление всплывающего окна и использование действия браузера) и добавление сценария с помощью chrome.tabs.executeScript
работает, но я нахожу это неудобно для пользователей. Прослушивание chrome.tabs.onActivated
или использование chrome.tabs.query({active: true})
не позволяет внедрить скрипт без нажатия на значок.
Есть ли способ сделать так, чтобы скрипт контента плавно вводился в старые вкладки (по крайней мере, когда активирована вкладка ) без широких разрешений?