如何在用户的浏览器中缓存我的网站?

时间:2015-06-16 12:30:09

标签: javascript html5 caching

我发现了许多关于缓存的解释,其中一些甚至有例子,但是,了解它以及如何使用它有点模糊。我试过多次使用它,但我失败了(我想提高速度,我只想从服务器加载必需的)。你能帮我把这个页面保存在浏览器的缓存中吗?如果可能,请给我一个解释或不同的方法来解决它(它也可以是JS!)?

P.S。:如果你给我一个适合这个页面的例子,它可以是Appcache;)。

提前致谢。

我的Appcache文件名:offline.appcache。

CACHE MANIFEST

/style.css http://sistema.agrosys.com.br/sistema/labs/CSS_HTML/html1.html

<!DOCTYPE html>
<html lang="en" manifest="/offline.appcache">

<head>
  <meta name="viewport" content="width=device-width" />
  <title>page1</title>
  <link rel="stylesheet" type="text/css" href="style.css">
</head>

<body>

  <div class="testing_class">Test</div>
  <div class="testing_clas">Test</div>
  <div class="testing_cla">Test</div>
  <div class="testing_cl">Test</div>
  <div class="testing_c">Test</div>
  <div class="testing_">Test</div>

</body>

</html>

2 个答案:

答案 0 :(得分:5)

使用AppCache重新考虑。使用它并不一定意味着您的网站将脱机工作。基本上,以下是AppCache采取的步骤,无论浏览器连接状态如何:

  1. 向服务器询问清单文件。
  2. 如果清单文件没有更改,则会提供本地文件。
  3. 如果清单文件已更改,它会下载新文件,保存它们然后再提供它们。
  4. 既然你提到了那个

      

    我想提高速度,我只想从服务器上加载

    AppCache是完全有效的解决方案。

    编辑:使用AppCache的快速示例:

    在原始HTML的开头:

    <!DOCTYPE html>
    <!--[if lte IE 9]>
    <style>.scrollingtable > div > div > table {margin-right: 17px;}</style>
    <![endif]-->
    <html manifest="example.appcache">
        <head>
    

    你只需要&#34;清单&#34;在标签中。然后,example.appcache文件将是:

    CACHE MANIFEST
    
    CACHE:
    http://code.jquery.com/ui/1.11.4/themes/redmond/jquery-ui.css
    http://code.jquery.com/jquery-1.10.2.js
    http://code.jquery.com/ui/1.11.4/jquery-ui.js
    
    NETWORK:
    *
    http://*
    https://*
    

    只需在CACHE部分中包含您网站使用的任何静态内容。

    您还可以在清单文件中放置版本号或日期,以确保浏览器在需要时获取新内容。

答案 1 :(得分:1)

缓存用于避免重新下载经常重复使用的文件(跨多个页面或多个会话),但它主要针对属于&#34;资产&#34;类别的文件。 (CSS,javascript,图像等),预计将保持冻结状态。但是,网页的内容(HTML)预计不会被冻结(例如搜索结果等),并且通常尺寸合理,因此没有理由去打扰它(谁还有真的是56k连接?)。

然后,有HTML&#34;静态页面&#34;的情况,但通常那些页面只包含文本,文本非常轻(除非你有一本完整的书)与其他媒体相比,所以大多数人不要为此烦恼。

现在,如果你真的想要&#34;缓存&#34; HTML,它与保持离线版本完全一样,为什么不用Appcache?。