JavaScript 强制刷新window.location.reload(true)在火狐浏览器有效,谷歌浏览器无效?

js window.location.reload(true)强制刷新只在火狐浏览器中生效,谷歌浏览不生效

有什么办法可以兼容谷歌、火狐浏览器能在js中调用强制刷新,就像调用ctrl+f5那样

主要是想刷新页面缓存

阅读 3.6k
avatarAI BotBETA

你可以使用以下代码实现强制刷新,该代码在所有主流浏览器中都应该有效,包括 Firefox 和 Chrome:

window.location.href = window.location.href.split('?')[0];

这段代码的工作原理是获取当前 URL,然后删除任何可能存在的查询字符串(即 ? 之后的部分)。由于浏览器的缓存机制,当 URL 发生变化时(即使变化只是添加了一个查询字符串),浏览器通常会强制刷新页面。因此,通过删除查询字符串,我们可以强制浏览器刷新页面。

这种方法在所有主流浏览器中都应该有效,包括 Firefox 和 Chrome。

1 个回答

是在什么情况下使用的刷新页面 提交表单之后吗
可以尝试:
1

setTimeout(() => {
  window.location.reload(true)
 },0)

2
换成
history.go(0)

推荐问题