Localstorage在我们所有IOS设备上的最新iOS更新后停止工作,但我们似乎无法在线找到任何有关此更改的参考,并且想知道发生了什么。
我有一个jsfiddle实现基本的localstorage设置和获取。 它在Chrome(IOS)上运行没有问题,但在Safari上完全失败: https://jsfiddle.net/mva3ap87/
以下是代码:
var ls = {
set: function() {
if (window.localStorage && window.localStorage.setItem) {
window.localStorage.setItem('hello','world');
return true;
}
return false;
},
get: function() {
if (window.localStorage && window.localStorage.getItem) {
return window.localStorage.getItem('hello');
} else {
return 'nope';
}
}
}
$('.status1').html(window.localStorage?'Yes':'No');
$('.status2').html(ls.set()?'Success':'Failure');
$('.status3').html(ls.get());
此问题会影响我们尝试过的所有IOS设备。
隐身模式未启用。 没有弹出窗口阻止程序处于活动状态。"不跟踪"已关闭。 允许使用Cookie(但无论如何都不重要)。
有什么线索?
更新
我可以借用一个mac并发现错误:
" DOM例外22:尝试向存储中添加超出配额的内容"。
localstorage为空,浏览器未处于隐身模式。
我更加困惑。