2014-06-09 119 views
0

我创建一个加载外部脚本像这样一个书签:缓存文件

script.setAttribute('src', 'http://scriptsrc.com'); 

我添加缓存无效化到这样如果我更新加载脚本,所有用户立即得到更新并且没有意外发生。

script.setAttribute('src', 'http://scriptsrc.com?' + new Date().getTime()); 

因为我希望用户会点击这个书签了很多,我在想一些本地缓存是好事,所以我的问题是,你如何确保该文件ISIS仅在缓存中保持约一小时?我在想沿着这些线路的东西可能会奏效

script.setAttribute('src', 'http://scriptsrc.com?' + (new Date().getTime()).toString().substring(0,7)); 

,因为我们抓住左右下降到这个数字,将改变对小时(我认为)第七届值。我的数学不好,可能有更好的方法来做到这一点。

谢谢!

+0

浏览器已经缓存了脚本文件。这不是你必须实现的东西。 – jfriend00

+0

是的,除非用户已禁用此功能,否则本地缓存已由浏览器处理 (或者,为什么不制作非常长的小书签或制作用户脚本) – tomysshadow

+0

问题是关于在一小时后取消缓存的文件。我会更新这个问题,以便更清楚。 – ccnokes

回答

0

做你问什么,最好的办法是这样的:(new Date()).getHours()

我没有看到任何根本可怕的这样做,但你会更好,从长远来看,学习一些关于如何浏览器缓存工作。