摘要:離線檢測含義設(shè)備能否上網(wǎng)代碼注和,和最新的沒問題應(yīng)用緩存緩存的目的是專門為網(wǎng)頁離線設(shè)計的,當(dāng)然在在線情況也會緩存機制當(dāng)用戶在地址輸入請求的地址去請求網(wǎng)頁時,瀏覽器會先本地緩存中查看是否有對應(yīng)的緩存文件,如果有然后查看新鮮度就是是否過期了,如
23.1 離線檢測
含義:設(shè)備能否上網(wǎng)
代碼:
navigator.onLine
注:IE6+和safari+5,firefox3+和opera16+,chrome最新的沒問題
23.2 應(yīng)用緩存緩存的目的是專門為網(wǎng)頁離線設(shè)計的,當(dāng)然在在線情況也會緩存
機制:當(dāng)用戶在地址輸入請求的地址去請求網(wǎng)頁時,瀏覽器會先本地緩存中查看是否有對應(yīng)的緩存文件,如果有然后查看‘新鮮度’就是是否過期了,如果過期了此時也不會去請求新的資源而是去與服務(wù)器端進行校驗核對服務(wù)器端有沒有更新的資源如果有則去請求沒有就更新‘新鮮度’, 新鮮度由響應(yīng)時服務(wù)器告訴瀏覽器或者在返回的html中加meta屬性告訴瀏覽器,不過meta屬性通常是針對本地靜態(tài)文件
(1) 離線緩存方法(我也沒實現(xiàn),想一想都離線了還讓用戶看啥,畢竟瀏覽器都有很好的網(wǎng)斷界面):
23.3 數(shù)據(jù)存儲(1) Cookie
為什么:cookie的存在讓服務(wù)器和客戶端有了一種通訊方式,因為http是無狀態(tài)的,可以通過cookie讓服務(wù)器鑒別當(dāng)前用戶,cookie的值存儲在客戶端本地(java創(chuàng)建的cookie存在于響應(yīng)頭,而javascript創(chuàng)建的cookie存在于請求頭)注:cookie的存取的前提是頁面在服務(wù)中而不是本地文件 如何做(javascript):賦值:document.cookie = "name=jiang;expires=Thu, 18 Dec 2043 12:00:00 GMT";讀?。篸ocument.cookie;cookie沒有提供刪除的api,銷毀的間接方法是重新為對應(yīng)cookie賦值,并將過期時間設(shè)為之前的一個時間,默認(rèn)是瀏覽器關(guān)閉銷毀 限制:cookie在每個域名下的數(shù)量是有限制的,各個瀏覽器限制的數(shù)量不一樣最少的是20,最多的chrome無限制,cookie的大小限制各個瀏覽器也不同,基本是4096+-1,也就是一個域名下的cookie大小在這個范圍內(nèi) **注**:碰到cookie數(shù)量的限制問題可以通過‘子cookie’來解決,思路是cookie中鍵-值中值是另一個鍵值
(2) Storage類型
為什么:同樣是存儲,Cookie比Storage出現(xiàn)的早,那么Storage的出現(xiàn)一定是為了彌補Cookie的某些不足了,比如數(shù)量和大小的限制 如何做:Storage提供了一些API,clear(),getItem(name),key(index),removeItem(name),setItem(name,value) 1、 sessionStorage對象 特點:聲明周期是瀏覽器關(guān)閉前,訪問域是最初建立的頁面,只存在與服務(wù)器上資源本地靜態(tài)資源不支持,大小限制大部分是2.5M,IE8,opera是5M 2、globalStorage[]對象 特點:跨越回話限制,可以指定訪問域和持久存儲 示例: ``` globalStorage["wrox.com"].name = "jiang"; // 指定訪問域 ``` **注**:指定的域名有同源策略,就是協(xié)議和端口要保持一致 3、 localStorage對象 特點:localStorage是globalStorage替代品,localStorage對象不能指定訪問域并且有同源策略,大小限制是chrome和safari 是2.5M其它大部分是5M **注**:更大量的數(shù)據(jù)可以通過indexDB存儲
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/101919.html
摘要:在這種情況下,瀏覽器將繼續(xù)使用原應(yīng)用緩存。對象對象有一個屬性,屬性的值是常量,表示應(yīng)用緩存的狀態(tài)。兼容性與其他客戶端儲存方案相比,同樣也有限制,這些限制因瀏覽器圍而異。對象主要用于僅針對會話的小段數(shù)據(jù)的存儲。 開發(fā)離線Web應(yīng)用需要幾個步驟: 首先確保應(yīng)用知道設(shè)備是否能上網(wǎng)。 應(yīng)用必須能訪問一定的資源(圖像,Javascript,CSS),這樣才能正常工作。 離線檢測 naviga...
摘要:應(yīng)用緩存的應(yīng)用緩存,或者簡稱為,是專門為開發(fā)離線應(yīng)用而設(shè)計的。應(yīng)用緩存還有很多相關(guān)的事件,表示其狀態(tài)的改變。數(shù)據(jù)存儲,通常直接叫做,最初是在客戶端用于存儲會話信息的。也就是使用值來存儲多個名稱值對兒。 所謂Web離線應(yīng)用,就是在設(shè)備不能上網(wǎng)的情況下仍然可以運行的應(yīng)用。開發(fā)離線Web應(yīng)用需要幾個步驟:(1)確保應(yīng)用知道設(shè)備是否能上網(wǎng);(2)應(yīng)用還必須能訪問一定的資源(圖像、JavaScr...
摘要:在線離線應(yīng)用緩存就是一個從瀏覽器的緩存中分出來的緩存去,在緩存中保存數(shù)據(jù),可以使用一個描述文件,列出要下載和緩存的資源。 離線檢測 HTML5中定義的: navigator.onLine如果為true則表示設(shè)備能夠上網(wǎng) 注意是大寫的L(onLine); 用下面代碼檢測屬性狀態(tài): if (navigator.onLine) { // statement if online } e...
閱讀 3330·2021-10-11 11:08
閱讀 4459·2021-09-22 15:54
閱讀 940·2019-08-30 15:56
閱讀 892·2019-08-30 15:55
閱讀 3567·2019-08-30 15:52
閱讀 1377·2019-08-30 15:43
閱讀 1965·2019-08-30 11:14
閱讀 2535·2019-08-29 16:11