You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何停止依赖JSON-Pretty的JS缓存及解决Squarespace画廊问题?

解决方案:禁用依赖JSON-Pretty的JavaScript缓存

因为你没有Squarespace开发者模式的完整权限,只能通过页头/页脚注入代码来实现需求,这里提供两种针对性的可行方法:


方法1:动态添加带随机参数的脚本标签(推荐)

如果依赖JSON-Pretty的JS是通过外部链接引入的,你可以在全站页脚或目标页面的页头注入以下代码——通过给脚本URL添加时间戳参数,强制浏览器每次都重新获取最新版本,绕过缓存:

document.addEventListener('DOMContentLoaded', function() {
  // 替换成你要禁用缓存的JS文件实际路径
  const targetJsUrl = 'path/to/your/json-pretty-dependent-script.js';
  // 追加时间戳作为随机参数,确保每次请求都是新的
  const noCacheUrl = targetJsUrl + '?v=' + new Date().getTime();
  
  const scriptTag = document.createElement('script');
  scriptTag.src = noCacheUrl;
  scriptTag.type = 'text/javascript';
  // 如果原脚本有async/defer等属性,可在这里对应添加
  // scriptTag.async = true;
  
  // 将脚本插入页面头部完成加载
  document.head.appendChild(scriptTag);
});

注意:如果原模板已经自动加载了该JS文件,先尝试通过Squarespace后台设置关闭原有加载逻辑,避免重复加载。若无法关闭,可在代码中先移除原有脚本标签再注入新的。


方法2:全局覆盖缓存控制头(备选)

如果只需要在特定页面禁用缓存,可在对应页面的页头注入以下meta标签,强制浏览器不缓存当前页面的任何资源(包括目标JS):

<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="0" />

缺点:此方法会影响整个页面的缓存策略,而非仅针对目标JS文件,仅在方法1无法实现时使用。


额外注意事项

  • 若目标JS用于画廊页面,由于该页面无法添加页面内代码,需将代码放在全站页脚中,确保它在画廊页面生效。
  • 测试时请清空浏览器缓存或使用无痕模式验证,确认新的加载逻辑已生效。

内容的提问来源于stack exchange,提问作者paulcook

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 06:22:05