Расширение Chrome - как постоянно проверять текущую вкладку? - PullRequest
0 голосов
/ 08 апреля 2019

Я пытаюсь запустить таймер на основе определенных URL-адресов и вывести сообщение при достижении лимита.К сожалению, я смог использовать только tabs.onActivation и tabs.onUpdated в background.js для обновления моего таймера.

Это означает, что мой таймер не обновляется, пока он находится на одной из отмеченных вкладок.Если я пытаюсь использовать цикл while в background.js, он не работает.

Я добавил вызов функции в popup.js, который получает обновленное время, но он вызывается только тогда, когда у меня открыто всплывающее окно.Есть какие-нибудь слушатели, которые постоянно проверяют текущую вкладку, или есть совершенно другой способ сделать это, о чем я пока не знаю?

Спасибо!

метод всплывающего окна:

var myVar = setInterval(myTimer, 1000);

function myTimer() {
    var bgPage = chrome.extension.getBackgroundPage();
    var time = bgPage.updateTime();
    document.getElementById("clock").textContent = "TIME: " + time;
    if (chrome.extension.getBackgroundPage().limit == -1){
        document.getElementById("limit").textContent = "LIMIT: " + "N/A"
    }
    else{
        document.getElementById("limit").textContent = "LIMIT: " + bgPage.updateLimit();
    }
}

манифест:

"background": {
      "scripts": ["format.js", "background.js"],
      "persistent": true
     },

Редактировать: добавлено в манифест

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...