我有以下html尝试在本地存储中设置一个密钥。在尝试访问本地存储时javascript/html5中的Dom异常18
<!DOCTYPE html>
<html>
<head>
<title>Test</title>
<script>
document.addEventListener('DOMContentLoaded', loaded, false);
function loaded(){
try {
window.localStorage.setItem("Test", "SetItemValue");
document.getElementById("test").innerHTML = "Test OK";
} catch (err) {
document.getElementById("test").innerHTML = "Test FAIL<br>" + err.message;
}
}
</script>
</head>
<body>
<div id="test">Testing...</div>
</body>
</html>
在单个iPhone5上,这会导致以下异常。
Test FAIL
SecurityError: DOM Exception 18
其他iPhones测试(其他三个)具有相同iOs版本(7.0.2)的作品。
我已经从https://x.y.domain.tld和http://x.domain.tld测试了上述页面,但有相同的例外情况。
有关“DOM Exception 18”的其他问题似乎与安全设置有关,例如,在本地主机上测试,但通过https链接到远程内容。但这是一个简单的尝试访问本地存储的简单html页面。
见我的回答,问题解决了。但我们确实尝试在Safari中切换每个设置(幸好没有那么多),尝试每种组合。我应该在我的问题中加上这一点。 – mnsc