首页 > 解决方案 > Tab Reloader 检测网页更新

问题描述

我在 Opera 中使用Tab Reloader来定期检查网站的更新。目前 Opera 中的选项卡按预期重新加载。此插件允许在网页代码中注入自定义代码,以便用户可以添加一些功能。开发人员提供了示例代码来检查重新加载选项卡中的网页是否已更新。这段代码正在工作,有点。问题是它检测到静态网页的变化,但无法检测到动态生成的页面。下面的代码示例:

{
  async function sha256(message) {
    const msgBuffer = new TextEncoder('utf-8').encode(message);
    const hashBuffer = await crypto.subtle.digest('SHA-256', msgBuffer);
    const hashArray = Array.from(new Uint8Array(hashBuffer));
    const hashHex = hashArray.map(b => ('00' + b.toString(16)).slice(-2)).join('');
    return hashHex;
  }
  sha256(document.body.innerText).then(hash => {
    const oh = localStorage.getItem('tab-reloader-hash');
    if (oh && oh !== hash) {
      (new Audio('https://www.w3schools.com/html/horse.ogg')).play()
    }
    localStorage.setItem('tab-reloader-hash', hash);
  });
}

问题是我应该如何修改代码,以便插件能够检测到动态更新页面中的变化。有什么建议么?谢谢!

标签: webdynamictabs

解决方案


推荐阅读