免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
從javascript讀取cookies說開去:談談網(wǎng)頁的本地化存儲

學習要點:
1.cookies

2.cookies 局限性

3.其他存儲

隨著 Web 越來越復雜,開發(fā)者急切的需要能夠本地化存儲的腳本功能。這個時候,第一個出現(xiàn)的方案:cookie 誕生了。cookie 的意圖是:在本地的客戶端的磁盤上以很小的文件形式保存數(shù)據(jù)。
一.Cookies
cookies 也叫 HTTP Cookies, 最初是客戶端與服務器端進行會話使用的。 比如, 會員登錄,下次回訪網(wǎng)站時無須登錄了; 或者是購物車, 購買的商品沒有及時付款, 過兩天發(fā)現(xiàn)購物車
里還有之前的商品列表。
HTTP Cookies 要求服務器對任意 HTTP 請求發(fā)送 Set-Cookie,因此,Cookie 的處理原則上需要在服務器環(huán)境下進行。當然,現(xiàn)在大部分瀏覽器在客戶端也能實現(xiàn) Cookie 的生成和獲取。(目前 Chrome 不可以在客戶端操作,其他瀏覽器均可)
cookies 的組成
cookies 由名/值對形式的文本組成:name=value。完整格式為:

name=value; [expires=date]; [path=path]; [domain=somewhere.com]; [secure]  

中括號是可選,name=value 是必選。

document.cookie = 'user=' + encodeURIComponent('ranzige'); //編碼寫入   alert(decodeURIComponent(document.cookie)); //解碼讀取  

expires=date 失效時間,如果沒有聲明,則為瀏覽器關閉后即失效。聲明了失效時間,那么時間到期后方能失效。

var date = new Date(); //創(chuàng)建一個   date.setDate(date.getDate() + 7);document.cookie = "user= " + encodeURIComponent('ranzige') +";expires=" + date;  

PS: 可以通過 Firefox 瀏覽器查看和驗證失效時間。 如果要提前刪除 cookie 也非常簡單,只要重新創(chuàng)建 cookie
把時間設置當前時間之前即可:date.getDate() - 1 或 new Date(0)。
path=path 訪問路徑, 當設置了路徑,
那么只有設置的那個路徑文件才可以訪問 cookie。

var path = '/E:/%E5%A4%87%E8%AF%BE%E7%AC%94%E8%AE%B0/JS1/29/demo';document.cookie = "user= " + encodeURIComponent('ranzige') + ";path=" + path;  

PS:為了操作方便,我直接把路徑復制下來,并且增加了一個目錄以強調效果。
domain=domain
訪問域名,用于限制只有設置的域名才可以訪問,那么沒有設置,會默認限制為創(chuàng)建 cookie 的域名。

var domain = 'cnblogs.com';document.cookie = "user= " + encodeURIComponent('ranzige') + ";domain=" + domain;  

PS:如果定義了 cnblogs.com,那么在這個域名下的任何網(wǎng)頁都可訪問,如果定義了dotnet.cnblogs.com,那么只能在這個二級域名訪問該
cookie,而主域名和其他子域名則不能訪問。
PS:設置域名,必須在當前域名綁定的服務器上設置,如果在 cnblogs.com
服務器上隨意設置其他域名,則會無法創(chuàng)建 cookie。
secure 安全設置,指明必須通過安全的通信通道來傳輸(HTTPS)才能獲取 cookie。

document.cookie = "user= " + encodeURIComponent('ranzige') + ";secure";  

PS:https 安全通信鏈接需要單獨配置。
JavaScript 設置、 讀取和刪除并不是特別的直觀方便,
我們可以封裝成函數(shù)來方便調用。
//創(chuàng)建 cookie

function setCookie(name, value, expires, path, domain, secure) {var cookieText = encodeURIComponent(name) + '=' + encodeURIComponent(value);if (expires instanceof Date) {cookieText += '; expires=' + expires;}if (path) {cookieText += '; expires=' + expires;}if (domain) {cookieText += '; domain=' + domain;}if (secure) {cookieText += '; secure';}document.cookie = cookieText;}  

//獲取 cookie

function getCookie(name) {var cookieName = encodeURIComponent(name) + '=';var cookieStart = document.cookie.indexOf(cookieName);var cookieValue = null;if (cookieStart > -1) {var cookieEnd = document.cookie.indexOf(';', cookieStart);if (cookieEnd == -1) {cookieEnd = document.cookie.length;}cookieValue = decodeURIComponent(document.cookie.substring(cookieStart + cookieName.length, cookieEnd));}return cookieValue;}  

//刪除 cookie

function unsetCookie(name) {document.cookie = name + "= ; expires=" + new Date(0);}  

//失效天數(shù),直接傳一個天數(shù)即可

function setCookieDate(day) {if (typeof day == 'number' && day > 0) {var date = new Date();date.setDate(date.getDate() + day);} else {throw new Error('傳遞的 day 必須是一個天數(shù),必須比 0 大');}return date;}  

二.cookie 局限性
cookie 雖然在持久保存客戶端用戶數(shù)據(jù)提供了方便, 分擔了服務器存儲的負擔。
但是還有很多局限性的。
第一:每個特定的域名下最多生成 20 個 cookie(根據(jù)不同的瀏覽器有所區(qū)別) 。
1.IE6 或更低版本最多 20 個
cookie
2.IE7 和之后的版本最多可以 50 個 cookie。 IE7 最初也只能 20 個,
之后因被升級不定后增加了。
3.Firefox 最多 50 個 cookie
4.Opera 最多 30 個 cookie
5.Safari
和 Chrome 沒有做硬性限制。
PS:為了更好的兼容性,所以按照最低的要求來,也就是最多不得超過 20 個 cookie。
當超過指定的
cookie 時,瀏覽器會清理掉早期的 cookie。IE 和 Opera 會清理近期最少使用的 cookie,F(xiàn)irefox 會隨機清理
cookie。
第二:cookie 的最大大約為 4096 字節(jié)(4k),為了更好的兼容性,一般不能超過 4095 字節(jié)即可。
第三:cookie
存儲在客戶端的文本文件,所以特別重要和敏感的數(shù)據(jù)是不建議保存在cookie
的。比如銀行卡號,用戶密碼等。
三.其他存儲
IE 提供了一種存儲可以持久化用戶數(shù)據(jù),叫做 userData,從
IE5.0 就開始支持。每個數(shù)據(jù)最多 128K,每個域名下最多 1M。這個持久化數(shù)據(jù)存放在緩存中,如果緩存沒有清理,那么會一直存在。

<div style="behavior:url(#default#userData)" id="box"></div>addEvent(window, 'load', function () {var box = document.getElementById('box');box.setAttribute('name', encodeURIComponent('chaoyi'));box.expires = setCookieDate(7);box.save('bookinfo');//box.removeAttribute('name'); //刪除 userDate   //box.save('bookinfo');   box.load('bookinfo');alert(decodeURIComponent(box.getAttribute('name')));});  

PS:這個數(shù)據(jù)文件也是保存在 cookie 目錄中,只要清除 cookie 即可。如果指定過期日期,則到期后自動刪除,如果沒有指定就是永久保存。
Web
存儲
在比較高版本的瀏覽器,JavaScript 提供了 sessionStorage 和 globalStorage。在 HTML5中提供了
localStorage 來取代 globalStorage。 而瀏覽器最低版本為: IE8+、 Firefox3.5+、 Chrome4+和
Opera10.5+。
PS:由于這三個對瀏覽器版本要求較高,我們就只簡單的在 Firefox
了解一下,有興趣的可以通過關鍵字搜索查詢。
//通過方法存儲和獲取

sessionStorage.setItem('name', 'ranzge');alert(sessionStorage.getItem('name'));  

//通過屬性存儲和獲取

sessionStorage.book = 'ranzige';alert(sessionStorage.book);  

//刪除存儲

sessionStorage.removeItem('name');  

PS: 由于 localStorage 代替了 globalStorage, 所以在 Firefox、 Opera 和 Chrome
目前的最新版本已不支持。
//通過方法存儲和獲取

localStorage.setItem('name', 'ranzige');alert(localStorage.getItem('name'));  

//通過屬性存儲和獲取

localStorage.book = 'ranzige';alert(localStorage.book);  

//刪除存儲

localStorage.removeItem('name');  

PS:這三個對象都是永久保存的,保存在緩存里,只有手工刪除或者清理瀏覽器緩存方可失效。 在容量上也有一些限制, 主要看瀏覽器的差異, Firefox3+、
IE8+、 Opera 為 5M,Chrome 和 Safari 為 2.5M。

昵稱:技術狂
園齡:2年
粉絲:12
關注:0
+加關注

搜索

常用鏈接

  • 我的隨筆
  • 我的評論
  • 我的參與
  • 最新評論
  • 我的標簽

我的標簽

  • cnblogs(18)
  • cnblogs.com(18)
  • 博客園(18)
  • jquery(11)
  • ajax(4)
  • css(4)
  • google日歷(2)
  • HTML(2)
  • iframe(2)
  • 提高(2)
  • 更多

隨筆檔案

  • 2013年12月 (28)
  • 2013年11月 (22)
  • 2011年12月 (2)

最新評論

  • 1. Re:兩段超簡單jquery代碼解決iframe自適應高度問題(不用判斷瀏覽器高度)
  • 為什么加30就可以自適應了
  • --代碼三郎
  • 2. Re:Jquery插件開發(fā)學習筆記:簡單地入門方法
  • 請教一下樓主:什么叫"支持jQuery選擇器.".500) this.width=500;"/>還好這個評論可以自己刪除和修改,媽的上傳圖片時,不小心把工資單給傳上去了,好險.
  • --思思博士
  • 3. Re:【Multiple backgrounds】用CSS3實現(xiàn)網(wǎng)頁多重背景
  • 多多分享……
  • --淡淡明月
  • 4. Re:耳目一新!令人膜拜的牛人簡歷!厲害的攻城師啊
  • 就想知道余博雅的那個簡歷上的氣泡效果,用css怎么做
  • --v流年v
  • 5. Re:jquery選擇器的實現(xiàn)流程簡析及提高性能建議!
  • 不錯
  • --月雪維杰
  • 6. Re:在asp.net中使用jQuery實現(xiàn)類似QQ網(wǎng)站的圖片切割效果
  • demo無法下載
  • --ccmyfriend
  • 7. Re:8個應該去逛逛JQuery的學習網(wǎng)站
  • 木有中文的,郁悶了
  • --shootingstar
  • 8. Re:[好文翻譯]WEB前端性能優(yōu)化的14條規(guī)則
  • 現(xiàn)在好像移動網(wǎng)站不多了,都是APP或者混合模式的APP,不過講的都是可用的方法
  • --zmcnxd
  • 9. Re:分享七個絢麗奪目的JQuery導航(還有蘋果、豬八戒等),有圖有真相
  • 都是三四年前的東東,沒新意
  • --新阿倫
  • 10. Re:一款超炫的jquery圖片播放插件[Cloud Carousel]
  • 非常非常老的插件了。
  • --新阿倫
  • 11. Re:巧妙利用函數(shù)的惰性載入提高javascript 代碼性能
  • 第一種在函數(shù)體內有函數(shù)自身的字面引用, 如果要修改函數(shù)命名會很麻煩. 還是第二種更好.
  • --whzx5byb
  • 12. Re:超酷百度百科的頁面導航效果,輕松制作---有圖有真相!
  • 圖片和Css沒得下載??? 哪里有附件???
  • --念時
  • 13. Re:巧妙利用函數(shù)的惰性載入提高javascript 代碼性能
  • 恩,不錯
  • --zmcnxd
  • 14. Re:超簡單!80行代碼實現(xiàn)Google日歷(拖放、移動、AJAX)
  • DayPilot確認挺好用的 坐等7.5開源
  • --liuhz
  • 15. Re:簡單方法使頁面回發(fā)后保持焦點
  • 這樣不好,這樣不好!
    這樣是將整個控件存入到session中,而僅僅只是為了一個焦點。
    如果有10個控件,焦點肯定是在其中的某個控件中,這樣你讓其它沒有焦點卻也存入session的控件情何以堪。
    而且貌似也沒人用session干這個呀?。?!
  • --歪脖子
  • 16. Re:超簡單!80行代碼實現(xiàn)Google日歷(拖放、移動、AJAX)
  • @技術狂
    1.LZ這話是不是把代碼封裝到一個cs里面引用,豈不是需要兩行實現(xiàn)了?
    2.上一句開個玩笑,可以實時css3和jquery,幾行就搞定了拖放,至于日志,引用一下插件.
  • --flyher
  • 17. Re:80行代碼實現(xiàn)Google日歷(拖放、移動、AJAX)
  • 頭像不錯!
  • --美洲象
  • 18. Re:簡單方法使頁面回發(fā)后保持焦點
  • 太笨拙了,每次按鍵都要觸發(fā)服務器事件,都有一次服務端交互,另外,20個控件你難道要寫20次事件,誤人子弟

    session 里面保存的是控件對象,實際應用中不知道是否可行,還是撤出主頁吧
  • --James-yu

閱讀排行榜

  • 1. 每天前進一厘米-如何快速迎頭趕上(919)
  • 2. 超簡單!80行代碼實現(xiàn)Google日歷(拖放、移動、AJAX)(568)
  • 3. 超酷百度百科的頁面導航效果,輕松制作---有圖有真相!(441)
  • 4. 超級簡單的jquery操作表格(添加/刪除行、添加/刪除列)(362)
  • 5. 超級簡單!80行代碼實現(xiàn)Google日歷(拖放、移動、AJAX)(350)
  • 6. 8個應該去逛逛JQuery的學習網(wǎng)站(350)
  • 7. 分享七個絢麗奪目的JQuery導航(還有蘋果、豬八戒等),有圖有真相(339)
  • 8. 深入理解jQuery中$.get、$.post、$.getJSON和$.ajax的用法(309)
  • 9. [JQuery插件系列]-強烈推薦10個非常不錯的jQuery工具提示插件(290)
  • 10. 耳目一新!令人膜拜的牛人簡歷!厲害的攻城師啊(278)
  • 11. 【葵花寶典】程序員技術練級攻略(轉)(269)
  • 12. [asp.net入門]利用ADO.NET處理數(shù)據(jù)的簡單之處(261)
  • 13. 巧妙利用jQuery和PHP打造類似360安全衛(wèi)士防火墻功能開關(類似iphone界面)效果(260)
  • 14. 拍案驚奇!9款神奇的jQuery/CSS3經(jīng)典插件(259)
  • 15. 2013年度最新最佳CSS網(wǎng)頁設計實例(256)
  • 16. 在asp.net中使用jQuery實現(xiàn)類似QQ網(wǎng)站的圖片切割效果(249)
  • 17. 一款超炫的jquery圖片播放插件[Cloud Carousel](248)
  • 18. 幾行JavaScript代碼搞定Iframe 自動適應(244)
  • 19. [好文翻譯]WEB前端性能優(yōu)化的14條規(guī)則(244)
  • 20. jquery選擇器的實現(xiàn)流程簡析及提高性能建議!(237)
  • 21. 苦逼的設計師:網(wǎng)頁前端的水到底有多深?(237)
  • 22. 某互聯(lián)網(wǎng)公司流傳出的提升代碼內外部質量的22條經(jīng)驗(217)
  • 23. 巧妙利用函數(shù)的惰性載入提高javascript 代碼性能(217)
  • 24. 20個令人驚嘆的音樂應用程序UI,值得收藏(214)
  • 25. 碼農湊熱鬧!小米搶購手機頁面前端代碼分析(204)
  • 26. 十個WEB開發(fā)人員不可不知的HTML5工具(193)
  • 27. 基于jQuery的Cookie操作插件--簡單而又沒有兼容性問題!(186)
  • 28. 使用jQuery動態(tài)改變圖片顯示大小(183)
  • 29. 使用FlexiGrid實現(xiàn)Extjs表格的效果-網(wǎng)絡傳輸小,更方便!(181)
  • 30. 利用CSS、JavaScript及Ajax實現(xiàn)圖片預加載的三大方法及優(yōu)缺點分析(180)
  • 31. 耳目一新!讓人膜拜的碉堡個人簡歷!厲害的攻城師(171)
  • 32. 6個原則、50條秘技提高HTML5應用及網(wǎng)站性能(170)
  • 33. 簡單方法使頁面回發(fā)后保持焦點(168)
  • 34. 可進可退,jQuery圖片、視頻、flash播放插件prettyPhoto使用記錄(164)
  • 35. 兩段超簡單jquery代碼解決iframe自適應高度問題(不用判斷瀏覽器高度)(144)
  • 36. Jquery插件開發(fā)學習筆記:簡單地入門方法(142)
  • 37. [Ajax] AJAX初體驗之-在博客中添加無刷新搜索(140)
  • 38. 湊熱鬧!小米搶購手機頁面前端代碼分析(139)
  • 39. 從javascript讀取cookies說開去:談談網(wǎng)頁的本地化存儲(133)
  • 40. IE6與CSS樣式兼容問題匯總(133)

評論排行榜

  • 1. 簡單方法使頁面回發(fā)后保持焦點(2)
  • 2. 超簡單!80行代碼實現(xiàn)Google日歷(拖放、移動、AJAX)(2)
  • 3. 巧妙利用函數(shù)的惰性載入提高javascript 代碼性能(2)
  • 4. 超級簡單!80行代碼實現(xiàn)Google日歷(拖放、移動、AJAX)(1)
  • 5. 超酷百度百科的頁面導航效果,輕松制作---有圖有真相!(1)
  • 6. jquery選擇器的實現(xiàn)流程簡析及提高性能建議!(1)
  • 7. 8個應該去逛逛JQuery的學習網(wǎng)站(1)
  • 8. 一款超炫的jquery圖片播放插件[Cloud Carousel](1)
  • 9. 分享七個絢麗奪目的JQuery導航(還有蘋果、豬八戒等),有圖有真相(1)
  • 10. 耳目一新!令人膜拜的牛人簡歷!厲害的攻城師啊(1)
  • 11. 在asp.net中使用jQuery實現(xiàn)類似QQ網(wǎng)站的圖片切割效果(1)
  • 12. [好文翻譯]WEB前端性能優(yōu)化的14條規(guī)則(1)
  • 13. 兩段超簡單jquery代碼解決iframe自適應高度問題(不用判斷瀏覽器高度)(1)
  • 14. Jquery插件開發(fā)學習筆記:簡單地入門方法(1)
  • 15. 【Multiple backgrounds】用CSS3實現(xiàn)網(wǎng)頁多重背景(1)
  • 16. 眼前一亮!十八款新潮而又獨特的網(wǎng)站Header設計(0)
  • 17. 從javascript讀取cookies說開去:談談網(wǎng)頁的本地化存儲(0)
  • 18. IE6與CSS樣式兼容問題匯總(0)
  • 19. 可進可退,jQuery圖片、視頻、flash播放插件prettyPhoto使用記錄(0)
  • 20. JQuery巧妙利用CSS操作打印樣式(0)
  • 21. 使用jQuery動態(tài)改變圖片顯示大小(0)
  • 22. jQuery多媒體播放器插件jQuery Media Plugin使用方法(0)
  • 23. 基于jQuery的Cookie操作插件--簡單而又沒有兼容性問題!(0)
  • 24. [asp.net入門]利用ADO.NET處理數(shù)據(jù)的簡單之處(0)
  • 25. 8個超級震憾的Jquery圖片特效欣賞,考驗你的瀏覽器!(0)
  • 26. 終于開博(0)
  • 27. 每天前進一厘米-如何快速迎頭趕上(0)
  • 28. 超級簡單的jquery操作表格(添加/刪除行、添加/刪除列)(0)
  • 29. 幾行JavaScript代碼搞定Iframe 自動適應(0)
  • 30. 使用FlexiGrid實現(xiàn)Extjs表格的效果-網(wǎng)絡傳輸小,更方便!(0)
  • 31. 說說CSS樣式中你不知道的“大于號”(0)
  • 32. 巧妙利用jQuery和PHP打造類似360安全衛(wèi)士防火墻功能開關(類似iphone界面)效果(0)
  • 33. 深入理解jQuery中$.get、$.post、$.getJSON和$.ajax的用法(0)
  • 34. 你應該了解的CSS語義化命名方式及常用命名規(guī)則(0)
  • 35. 當下流行的響應式布局介紹(0)
  • 36. 十個WEB開發(fā)人員不可不知的HTML5工具(0)
  • 37. 碼農湊熱鬧!小米搶購手機頁面前端代碼分析(0)
  • 38. 6個原則、50條秘技提高HTML5應用及網(wǎng)站性能(0)
  • 39. 利用CSS、JavaScript及Ajax實現(xiàn)圖片預加載的三大方法及優(yōu)缺點分析(0)
  • 40. 湊熱鬧!小米搶購手機頁面前端代碼分析(0)

推薦排行榜

  • 1. 8個超級震憾的Jquery圖片特效欣賞,考驗你的瀏覽器!(4)
  • 2. 巧妙利用函數(shù)的惰性載入提高javascript 代碼性能(4)
  • 3. 你應該了解的CSS語義化命名方式及常用命名規(guī)則(3)
  • 4. 當下流行的響應式布局介紹(3)
  • 5. 分享七個絢麗奪目的JQuery導航(還有蘋果、豬八戒等),有圖有真相(3)
  • 6. 超級簡單!80行代碼實現(xiàn)Google日歷(拖放、移動、AJAX)(3)
  • 7. [asp.net入門]利用ADO.NET處理數(shù)據(jù)的簡單之處(3)
  • 8. 二十個在線編程學習網(wǎng)站(2)
  • 9. [JQuery插件系列]-強烈推薦10個非常不錯的jQuery工具提示插件(2)
  • 10. 耳目一新!令人膜拜的牛人簡歷!厲害的攻城師啊(2)
  • 11. 在asp.net中使用jQuery實現(xiàn)類似QQ網(wǎng)站的圖片切割效果(2)
  • 12. [好文翻譯]WEB前端性能優(yōu)化的14條規(guī)則(2)
  • 13. 眼前一亮!十八款新潮而又獨特的網(wǎng)站Header設計(2)
  • 14. 巧妙利用jQuery和PHP打造類似360安全衛(wèi)士防火墻功能開關(類似iphone界面)效果(2)
  • 15. jquery選擇器的實現(xiàn)流程簡析及提高性能建議!(2)
  • 16. 超級簡單的jquery操作表格(添加/刪除行、添加/刪除列)(2)
  • 17. 使用FlexiGrid實現(xiàn)Extjs表格的效果-網(wǎng)絡傳輸小,更方便!(2)
  • 18. 超簡單!80行代碼實現(xiàn)Google日歷(拖放、移動、AJAX)(2)
  • 19. jQuery多媒體播放器插件jQuery Media Plugin使用方法(2)
  • 20. 8個應該去逛逛JQuery的學習網(wǎng)站(2)
  • 21. 一款超炫的jquery圖片播放插件[Cloud Carousel](2)
  • 22. 基于jQuery的Cookie操作插件--簡單而又沒有兼容性問題!(2)
  • 23. 十個WEB開發(fā)人員不可不知的HTML5工具(2)
  • 24. 碼農湊熱鬧!小米搶購手機頁面前端代碼分析(2)
  • 25. 6個原則、50條秘技提高HTML5應用及網(wǎng)站性能(2)
  • 26. 【葵花寶典】程序員技術練級攻略(轉)(2)
  • 27. 20個令人驚嘆的音樂應用程序UI,值得收藏(1)
  • 28. 深入理解jQuery中$.get、$.post、$.getJSON和$.ajax的用法(1)
  • 29. 利用CSS、JavaScript及Ajax實現(xiàn)圖片預加載的三大方法及優(yōu)缺點分析(1)
  • 30. 湊熱鬧!小米搶購手機頁面前端代碼分析(1)
  • 31. 2013年度最新最佳CSS網(wǎng)頁設計實例(1)
本站僅提供存儲服務,所有內容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Django框架下如何使用ajax,jquery的post方法
Selenium 常用代碼及 Tips
網(wǎng)站性能優(yōu)化:JS篇
熱點推薦:七個相關jQuery的最佳實踐
Django高級-AJAX應用
jQuery Tree 大全
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服