gpt4 book ai didi

javascript - Chrome 扩展 - 使用 javascript 定期运行并永久记录数据

转载 作者:行者123 更新时间:2023-11-28 18:40:10 25 4
gpt4 key购买 nike

目前,我有一个脚本,当单击右上角托盘中的图像时(仅适用于一个特定允许的网站),它会扫描页面 HTML,然后输出一些值。这种扫描和输出是单个 JS 文件中的一个函数,称为 checkData.js。

即使用户没有主动使用选项卡但它已打开,是否有可能自动让脚本每 10 秒运行一次并将数据记录到我稍后可以在扩展中访问的某个位置?这是因为页面 HTML 不断变化。我想我会使用警报或事件页面,但我不确定如何集成它们。

最佳答案

Chrome 将重复闹钟的频率限制为每分钟最多一次。如果没问题,请按以下步骤操作:

参见here关于如何设置事件页面。

在background.js中你会做这样的事情:

// event: called when extension is installed or updated or Chrome is updated
function onInstalled() {
// CREATE ALARMS HERE
...
}

// event: called when Chrome first starts
function onStartup() {
// CREATE ALARMS HERE
...
}

// event: alarm raised
function onAlarm(alarm) {
switch (alarm.name) {
case 'updatePhotos':
// get the latest for the live photo streams
photoSources.processDaily();
break;
...
default:
break;
}
}

// listen for extension install or update
chrome.runtime.onInstalled.addListener(onInstalled);

// listen for Chrome starting
chrome.runtime.onStartup.addListener(onStartup);

// listen for alarms
chrome.alarms.onAlarm.addListener(onAlarm);

创建重复闹钟是这样完成的:

// create a daily alarm to update live photostreams
function _updateRepeatingAlarms() {
// Add daily alarm to update 500px and flickr photos
chrome.alarms.get('updatePhotos', function(alarm) {
if (!alarm) {
chrome.alarms.create('updatePhotos', {
when: Date.now() + MSEC_IN_DAY,
periodInMinutes: MIN_IN_DAY
});
}
});
}

关于javascript - Chrome 扩展 - 使用 javascript 定期运行并永久记录数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36241436/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com