Расширение Chrome: заставьте его запускать каждую загрузку страницы
Я хочу сделать расширение chrome, которое выполняет некоторые скрипты после загрузки одной страницы, я не уверен, должен ли я реализовать эту логику на фоновой странице или это может быть где-нибудь еще, любая помощь здесь будет очень признательна.
4 ответов:
если он должен работать на
onloadсобытие страницы, означающее, что документ и все его активы загружены, это должно быть в скрипт контент встроенный в каждой странице, для которой вы хотите отслеживатьonload.
С фоновый скрипт вы можете слушать
chrome.tabs.onUpdatedсобытие и проверьте свойствоchangeInfo.statusна вызова. Это может быть загрузка или полное. Если это полное выполните действия.пример:
chrome.tabs.onUpdated.addListener( function (tabId, changeInfo, tab) { if (changeInfo.status == 'complete') { // do your things } })потому что это, вероятно, вызовет на каждом завершении вкладки, вы также можете проверить, если вкладка
activeна одноименный атрибут, как это:chrome.tabs.onUpdated.addListener( function (tabId, changeInfo, tab) { if (changeInfo.status == 'complete' && tab.active) { // do your things } })
этот код должен сделать это:
манифест.json
{ "name": "Alert 'hello world!' on page opening", "version": "1.0", "manifest_version": 2, "content_scripts": [ { "matches": [ "<all_urls>" ], "js": ["content.js"] } ] }содержание.js
alert('Hello world!')
Comments