【问题标题】:Need help in building a stopwatch chrome extension using javascript在使用 javascript 构建秒表 chrome 扩展时需要帮助
【发布时间】:2020-05-07 04:28:46
【问题描述】:

我正在尝试构建仅在某些网站域/URL 上启动的秒表 chrome 扩展。我已经了解了该项目的整个秒表方面,但是每当我关闭 chrome 扩展并重新打开它时,它会拉出秒表的最后一个位置,但随后会重置为零。我尝试使用 Chrome 的内置 API 进行内存存储,例如 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 html google-chrome-extension google-api popup


【解决方案1】:

当弹出页面关闭时,与之相关的所有 javascript 也将被终止。 您需要将函数和存储设置器移动到后台脚本。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-05-26
    • 1970-01-01
    • 1970-01-01
    • 2014-02-22
    • 1970-01-01
    • 2015-07-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多