window.alert 在 safari 中清除缓存后起作用

问题描述 投票:0回答:1

我正在为 safari 构建一个扩展。

我在

window.alert
中有
content.js
。大多数时候它有效,但有时却无效。 当它不起作用时,我清除 safari 的缓存,它就会重新开始工作。

我想让它一直工作而不清除缓存。

我怎样才能实现它?

内容.js:

window.addEventListener("load", async (event) => {
  console.log("loading");
  try {
     window.alert("alert");
 }
}
)

我用谷歌搜索,但找不到任何与此问题相关的问题。

javascript google-chrome-extension safari-extension
1个回答
0
投票

我可以解决这个错误。 之所以没有显示警报,是因为

"load"
在来自缓存时不适用。请参阅这个

所以我从

"load"
变成了
"pageshow"
。 我的整个代码如下。

window.addEventListener("pageshow", async (event) => {
  console.log("loading");

  if (event.persisted) {
    console.log("displayed from cache");
    window.location.reload();
  } 
})

然后就成功了!

© www.soinside.com 2019 - 2024. All rights reserved.