Нужна помощь в создании секундомера chrome с расширением javascript - PullRequest
0 голосов
/ 07 мая 2020

Я пытаюсь создать расширение chrome секундомера, которое запускается только на определенных доменах / URL-адресах веб-сайтов. Я вычислил весь аспект секундомера проекта, но всякий раз, когда я закрываю расширение chrome и снова открываю его, оно вытягивает последнее место на секундомере, но затем сбрасывается на ноль. Я пробовал использовать встроенный API Chrome для хранения памяти, например chrome .storage.syn c .get и chrome .storage.syn c .set, но всякий раз, когда я закрываю вкладку, берет из последнего места, где был сохранен таймер, но затем он перезапускается с нуля и не продолжает работу с того места, где был сохранен секундомер. Как я могу добиться, когда я нажимаю на расширение, секундомер все еще работает?

Вот мой Javascript:

chrome.storage.sync.get('time', function(get_time){
if (get_time.time) {
    document.getElementById("display").innerHTML = get_time.time;
}
});

let seconds = 0;
let minutes = 0;
let hours = 0;

let displaySeconds = 0;
let displayMinutes = 0;
let displayHours = 0;

function stopWatch() {

seconds++;

if (seconds / 60 === 1) {
    seconds = 0;
    minutes++;

    if (minutes / 60 === 1) {
        minutes = 0;
        hours++;
    }
}

if (seconds < 10) {
    displaySeconds = "0" + seconds.toString();
} else {
    displaySeconds = seconds;
}

if (minutes < 10) {
    displayMinutes = "0" + minutes.toString();
} else {
    displayMinutes = minutes;
}

if (hours < 10) {
    displayHours = "0" + hours.toString();
} else {
    displayHours = hours;
}

document.getElementById("display").innerHTML = displayHours + ":" + displayMinutes + ":" + displaySeconds;
var time = displayHours + ":" + displayMinutes + ":" + displaySeconds;
chrome.storage.sync.set({'time': time});

}

window.setInterval(stopWatch, 1000);

1 Ответ

0 голосов
/ 07 мая 2020

Когда всплывающая страница закрывается, все javascript связанные с ней также будут закрыты. Вам необходимо переместить функции и установщик хранилища в фоновый скрипт.

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