簡體   English   中英

在使用 javascript 構建秒表 chrome 擴展時需要幫助

[英]Need help in building a stopwatch chrome extension using javascript

我正在嘗試構建一個僅在某些網站域/URL 上啟動的秒表 chrome 擴展。 我已經了解了該項目的整個秒表方面,但是每當我關閉 chrome 擴展並重新打開它時,它會拉出秒表的最后一個位置,但隨后會重置為零。 我嘗試將 Chrome 的內置 API 用於 memory 存儲,例如 chrome.storage.sync.get 和 chrome.storage.sync.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);

當彈出頁面關閉時,與之相關的所有 javascript 也將被終止。 您需要將函數和存儲設置器移動到后台腳本。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM