2013-05-30 122 views
0

我正在研究一個在網頁上疊加圖像的小書籤(JavaScript是由書籤觸發的),以檢查html是否與設計一致。 (它使用不透明度)在本地存儲中保存本地圖像或圖像路徑?

我想保存基於每個網址的參考圖像。我有三個選項,據我所知:

  • 保存在cookie中
  • 路徑保存在本地存儲
  • 路徑保存圖像本地存儲

我目前計劃使用本地存儲來保存圖像。優點是,它可以工作,如果原始圖像被刪除,並在不同的計算機之間在鉻中同步。我不知道有什麼缺點。我不需要IE7中的像素完美,所以瀏覽器支持很好。

什麼是最好的方法?

回答

1

當然,您可以將圖像和/或網址保存到localStorage

然而,由於localStorage只需要string您需要首先無論是將圖像從服務器作爲這樣的圖像轉換爲data-url,或通過使用canvas(將圖像轉換注意,帆布通常只能從設置圖片同樣的起源,當然,在沒有polyfill的情況下,IE7不能使用canvas)。

一個更好的方法可能是使用indexedDB或新File API(目前支持不佳,到目前爲止只鍍鉻),它允許你要求大的存儲空間,它可以直接保存圖像(作爲BLOB)。

圖像將在您提供服務時進行存儲(除非您在畫布中使用jpeg重新縮放和重新壓縮),所以像素化或質量降低不應該成爲問題。

IE7 does not support localStorage所以你需要恢復到UserData(限制爲4 MB IIRC)或cookie的URL,而不是在這種情況下。

雖然 -

如果保持原始圖像不是那麼重要的地方,我寧願建議,在它的頭一晚到期數據服務的形象。

這種方式一直保留在緩存中,直到用戶刪除它或到期。它有限制流量到您的服務器,然後localStorage/indexedDB可能是一個更好的選擇。