Content Script не запускается до перезагрузки страницы
Хотя здесь много похожих вопросов, я не смог решить свою проблему ни с одним из принятых решений, поэтому создаю новый вопрос.
У меня есть контент-скрипт, который добавляет некоторую функциональность к задаче Jira . Однако при переходе к задаче Jira со сценарий содержимого не запускается, пока я вручную не перезагружу страницу.
Что я пробовал до сих пор:
- Добавление прослушивателей webNavigation (с разрешением манифеста), но ни один из них, похоже, не срабатывает при нажатии ссылки Jira Issue на странице фильтра.
// background.js
const myLog = () => console.log('webNavigation event triggered');
browser.webNavigation.onDOMContentLoaded.addListener(myLog);
browser.webNavigation.onHistoryStateUpdated.addListener(myLog);
browser.webNavigation.onReferenceFragmentUpdated.addListener(myLog);
- Добавление «all_frames»: true в manifest.json, но это тоже не помогло:
// manifest.json
...
"background": {
"scripts": ["background.js"],
"persistent": false
},
"content_scripts": [
{
"matches": ["*://jira.atlassian.com/*"],
"js": ["content.js"],
"all_frames": true
}
],
"permissions": ["tabs", "webNavigation", "<all_urls>"]
- Прослушивание события window.onpopstate внутри скрипта содержимого. Хотя он обнаруживает, когда я нажимаю стрелки «Назад» и «Вперед» в браузере, он не срабатывает, когда я нажимаю ссылки на страницы результатов фильтрациистранице результатов фильтра .
// content.js
window.onpopstate = () => {
browser.runtime.sendMessage('webNavigation event triggered');
}
Как я могу запустить этот сценарий контента без перезагрузки страницы вручную?