2010-08-23 38 views
9

是否可以将整个文件夹添加到HTML5高速缓存清单文件?我无法单独列出文件夹中的所有文件,因为此文件夹中的文件将动态更改(它是图像文件夹)。将整个文件夹添加到HTML5应用高速缓存

+0

可能的重复[如何在HTML5缓存清单中指定通配符以加载目录中的所有图像?](http://stackoverflow.com/questions/8001196/how-do-i-specify-a-通配符-内式HTML5的高速缓存清单到负载的所有图像-IN-A) – robertc 2013-10-11 14:05:02

回答

5

如果该文件夹是动态变化的,那么它不应该是在应用程序清单。如果文件夹发生变化,那么仍然需要从页面到文件夹中的文件进行某种链接。清单应该列出这些项目。

例如:

/images/ 
    1.jpg 
    2.jpg 
    3.jpg 
    4.jpg 

和(简体)HTML文件:

<html manifest="http://foo.bar/cache-manifest"> 
<body> 
<img src="images/2.jpg" /> 
<img src="images/4.jpg" /> 

应该有一个清单,看起来像这样:

CACHE MANIFEST 
http://foo.bar/images/2.jpg 
http://foo.bar/images/4.jpg 

如果您想更新清单文件包含新项目,您可以简单地添加一个URL参数,该参数在折叠内容时发生更改ER(和清单)的变化:

<html manifest="http://foo.bar/cache-manifest?updated=8_23_2010_1_53_pm"> 

每当清单网址的变化,它会重新下载。

0

包括你会做类似下面的一个文件夹....但是在这之前...我会考虑使用一个版本号或MD5,看是否做一个动态的方式来创建清单文件的文件本身已经改变。

CACHE MANIFEST 
CACHE: 
/Content/bootstrap/bootstrap.min.css 
/Content/jQuery/jquery-1.8.3.min.js 
/Content/bootstrap/bootstrap.min.js 
/Content/js 

那里的最后一行似乎是从该文件夹提供页面上使用的任何文件;这些文件出现在应用程序缓存中。

2

没有,目前还没有办法读取缓存文件夹的内容。通配符*只能在在线白名单部分中使用。

相关问题