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