佳木斯湛栽影视文化发展公司

主頁 > 知識(shí)庫 > html5指南-6.如何創(chuàng)建離線web應(yīng)用程序?qū)崿F(xiàn)離線訪問

html5指南-6.如何創(chuàng)建離線web應(yīng)用程序?qū)崿F(xiàn)離線訪問

熱門標(biāo)簽:百度競價(jià)點(diǎn)擊價(jià)格的計(jì)算公式 阿里云 使用U盤裝系統(tǒng) 網(wǎng)站建設(shè) 美圖手機(jī) 智能手機(jī) 檢查注冊(cè)表項(xiàng) 硅谷的囚徒呼叫中心

今天我們的內(nèi)容是關(guān)于如何創(chuàng)建離線web應(yīng)用,他的好處是可以讓瀏覽器下載我們指定的web資源,這樣用戶在離線狀態(tài)下也能正常使用我們的站點(diǎn)。

1.定義Manifest

我們使用manifest列舉出需要離線時(shí)訪問的資源,他本身是一個(gè)文本類型的文件,第一行經(jīng)常是CACHE MANIFEST,然后列舉我們需要的資源,每行一個(gè)。文件沒有固定的命名規(guī)則,后綴名也沒有要求,唯一的要求就是需要把后綴名在服務(wù)器端以text/cache-manifest的MIME類型定義。

如果是iis 7服務(wù)器,按照下面的步驟

1.比如后綴名為.appcache,打開iis7,選擇根節(jié)點(diǎn)(這樣所有站點(diǎn)都會(huì)繼承配置,也可以針對(duì)單個(gè)站點(diǎn)配置);

2.雙擊右側(cè)的MIME類型;

3.點(diǎn)擊右鍵添加MIME類型,這樣就完成了配置。

服務(wù)器配置完畢,添加manifest文件。

復(fù)制代碼
代碼如下:

CACHE MANIFEST
manifestFile.html
img/1.jpg
img/2.jpg
img/3.jpg

然后我們看下面的例子。

復(fù)制代碼
代碼如下:

<!DOCTYPE HTML>
<html manifest="manifest.appcache">
<head>
<title>Example</title>
<style>
img
{
border: medium double black;
padding: 5px;
margin: 5px;
}
</style>
</head>
<body>
<img alt="" id="imgtarget" src="img/1.jpg" />
<div>
<button id="1">car1</button>
<button id="2">car2</button>
<button id="3">car3</button>
</div>
<script>
var buttons = document.getElementsByTagName('button');
for (var i = 0; i < buttons.length; i++) {
buttons[i].onclick = handleButtonPress;
}
function handleButtonPress(e) {
document.getElementById('imgtarget').src = 'img/' + e.target.id + '.jpg';
}
</script>
</body>
</html>

程序運(yùn)行,根據(jù)瀏覽器的不同,有的瀏覽器會(huì)詢問你,是否允許保存離線數(shù)據(jù)到本地,有的不會(huì)。這樣一個(gè)簡單的離線應(yīng)用就創(chuàng)建好了。

2.疑惑解答

我在學(xué)習(xí)這部分知識(shí)的時(shí)候也遇到些問題和疑惑,如:

1.為什么我直接運(yùn)行vs2010(我的開發(fā)環(huán)境),離線應(yīng)用程序不能正確運(yùn)行?

2.我怎么才知道離線應(yīng)用是否創(chuàng)建成功?

3.我怎么才知道當(dāng)前應(yīng)用是否是離線狀態(tài)?

4.暫停了iis服務(wù)后應(yīng)該就處于離線狀態(tài)了吧,為什么我重新刷新頁面要報(bào)404錯(cuò)誤?

現(xiàn)在我就這些我遇到的問題進(jìn)行解答。

2.1.首先解釋第一個(gè)疑問。關(guān)于這個(gè)問題,關(guān)鍵點(diǎn)在于你的應(yīng)用web配置項(xiàng)是如何配置的,如果使用的是vs開發(fā)服務(wù)器的形式,那么我們就沒有辦法為它設(shè)置MIME類型,所以這種情況下我們的離線應(yīng)用時(shí)沒辦法用的。剩下的兩種web配置方式,只要你正確的按照,我上面介紹的配置MIME類型的方法配置了iis服務(wù)器,你的離線應(yīng)用就能正確運(yùn)行。

2.2.下面解釋第二個(gè)問題,這里需要借助chrome瀏覽器的調(diào)試工具,使用chrome瀏覽器打開我們的web程序,按F12,切換到Resources選項(xiàng)卡。只要Application Cache下面有我們配置的信息,能找到緩存的文件,就證明我們的離線應(yīng)用創(chuàng)建成功了。

2.3.還是使用chrome的調(diào)試工具,還是在Resources選項(xiàng)卡,注意到紅線圈住的地方?jīng)],Online表示在線。

拔掉網(wǎng)線,顯示Offline,表示離線,這時(shí)離線應(yīng)用的效果就能表現(xiàn)出來了。

2.4.關(guān)于最后一個(gè)問題,還是要借助chrome瀏覽器的調(diào)試工具,當(dāng)我們暫停iis服務(wù)的時(shí)候,我們看下Resources選項(xiàng)卡的顯示,仍然是Online,只是后面從IDLE變成了OBSOLETE。這也就解釋了為什么暫停本地iis,離線應(yīng)用的離線效果顯示不出來。

本節(jié)的內(nèi)容到此為止。

標(biāo)簽:懷化 湖北 湘潭 賀州 通遼 黃山 煙臺(tái) 山南

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《html5指南-6.如何創(chuàng)建離線web應(yīng)用程序?qū)崿F(xiàn)離線訪問》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    襄汾县| 临安市| 射阳县| 措勤县| 浏阳市| 谢通门县| 甘肃省| 灵川县| 吴忠市| 乐安县| 孝感市| 香河县| 罗平县| 个旧市| 从江县| 明水县| 巧家县| 阳西县| 长治市| 平安县| 通许县| 尼木县| 玛曲县| 宾阳县| 平顺县| 通化县| 盖州市| 涡阳县| 攀枝花市| 定陶县| 收藏| 莱西市| 孟村| 虎林市| 瓮安县| 灌云县| 郯城县| 扶绥县| 凉城县| 桦川县| 武功县|