摘 要:本文主要介紹實現圖書館網站個性化的一套方案,即利用HTML5的本地存儲[1](LocalStorage)特性。同時,對于那些不支持本地存儲的瀏覽器(如IE6),本文也進行了一些探討,并給出能夠實現類似于本地存儲功能的替代方案。
關鍵詞:HTML5 本地存儲 LocalStorage 個性化 書簽
中圖分類號:G71 文獻標識碼:A 文章編號:1672-3791(2013)04(b)-0253-01
所謂的網站個性化,是指網站能夠記住不同用戶的信息(如瀏覽記錄或最近一次登錄時間及地點等)或者用戶能夠根據自身喜好定制網站(如決定網站首頁顯示哪些內容等)。一些購物網站,如卓越亞馬遜網,能夠記住用戶的圖書瀏覽歷史,提醒用戶可能感興趣的圖書有哪些。
要實現網站的個性化,關鍵是如何存儲用戶的個性化信息。幸運的是,我們現在可以使用HTML5的本地存儲來將信息以鍵值對的形式保存在本地計算機中。這樣,當用戶再次訪問網站時,瀏覽器會在需要時將信息從用戶本地計算機中取出來供前端程序使用。
可以看到,在存儲數據及獲取數據的過程中,都是在前端進行,并且無論用戶離開站點或關閉瀏覽器,存儲的數據都不會消失。
不過,要使用HTML5的本地存儲,需要有支持該特性的瀏覽器。目前,大多數瀏覽器的最新版本都支持本地存儲。對于那些不支持本地存儲的瀏覽器(如IE6)而言,可以使用其它本地存儲技術(如Cookie或IE專有的UserData[2])進行替換。
1 檢查瀏覽器兼容性
4 清空數據
書簽并不是永久存在的,當用戶覺得不再需要書簽時,他們會刪除某些書簽或清空書簽夾。如果要刪除某一書簽,可以使用localStorage.removeItem(key);形式的代碼。如果要清空書簽夾,可以使用localStorage.clear();形式的代碼。
刪除書簽或清空書簽是必要的,因為瀏覽器的本地存儲空間是有限的。定期清理瀏覽器的本地存儲空間可以使得其它程序合理的利用存儲空間。
值得一提的是,HTML5的本地存儲并不像Cookie那樣可以設置自動定期清理,這意味著除非手動清理瀏覽器,否則數據將永遠存儲在用戶的計算機中。鑒于這一點,在編寫HTML5本地存儲應用時,一定要記得提供刪除或清空存儲數據的功能。
5 參考文獻
[1] Peter Lubbers,Brian Albers,Frank Salim,著.HTML5高級程序設計[M].李杰,柳靖,劉淼,譯.北京:人民郵電出版社,2011,1(175).
[2] Mark Pilgrim,著.HTML5揭秘[M].常可,胡金埔,趙靜,譯.北京:電子工業出版社,2010,12(128).