Safari的html5 localStorage錯誤:“ QUOTA_EXCEEDED_ERR:DOM異常22:試圖向存儲中添加超出配額的內容”
顯然,這是設計使然。當Safari(OS X或iOS)處于私有瀏覽模式時,它似乎localStorage可用,但是嘗試調用setItem會引發異常。
store.js line 73'QUOTA_EXCEEDED_ERR: DOM Exception 22: An attempt was made to add something to storage that exceeded the quota.'
發生的事情是該窗口對象仍在localStorage全局命名空間中公開,但是當您調用時setItem,將拋出此異常。的所有呼叫都將removeItem被忽略。
我相信最簡單的解決方法(盡管我尚未測試過此跨瀏覽器)將更改功能isLocalStorageNameSupported()以測試您是否還可以設置一些值。
function isLocalStorageNameSupported() { var testKey = ’test’, storage = window.sessionStorage; try {storage.setItem(testKey, ’1’);storage.removeItem(testKey);return localStorageName in win && win[localStorageName]; } catch (error) {return false; }}解決方法
我的webapp在ios Safari私人瀏覽中出現javascript錯誤:
JavaScript:錯誤
未定義
QUOTA_EXCEEDED_ERR:DOM異常22:試圖向存儲中添加內容…
我的代碼:
localStorage.setItem(’test’,1)
相關文章:
1. html5 - css3scale和rotate同時使用轉換成matrix寫法該如何轉換?2. win10 python3.5 matplotlib使用報錯3. php多任務倒計時求助4. css - 如何把一個視圖放在左浮動定位的視圖的上面?5. javascript - jquery怎么讓a標簽跳轉后保持tab的樣式6. MySQL的聯合查詢[union]有什么實際的用處7. javascript - vue組件的重復調用8. javascript - 小demo:請教怎么做出類似于水滴不斷擴張的效果?9. python的正則怎么同時匹配兩個不同結果?10. javascript - axios請求回來的數據組件無法進行綁定渲染
