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. jpa mysql 如何id自增初始值?2. javascript - angularJS module之间可以通信吗?3. nginx - 关于vue项目部署到ngnix后出现的问题4. javascript - 怎么才能有效的防止网页被盗?5. javascript - 一个字符串转换成数字,例子就是a="2,322.222",b=’1,211.21’,如何在angualr中执行相减6. javascript - vue使用keep-alive不能保持滚动位置问题。7. python - 有一个函数名(字符串形式),如何能够调用这个函数?8. java - mysql查询,这是怎么查询的呢9. javascript - 问一个有趣的问题: 如何将 数字 转成 金额格式10. MySQL的SELECT...FOR UPDATE究竟起什么作用

 网公网安备
网公网安备