我发现了类似的问题,但答案是Jquery或不在这个特定情况下工作。 我有以下HTML代码
<html>
<body onload="load()">
<div>
<select id="colorlist" onchange="saveSelect()">
<option value="white">White</option>
<option value="#E0C2FF">#E0C2FF</option>
<option value="orange">Orange</option>
<option value="purple">Purple</option>
</select>
</div>
</body>
</html>
以及以下javascript代码在Chrome中有效但在Firefox中无效(我还没有在IE中测试)。
function saveSelect () {
localStorage.bgColor = document.getElementById("colorlist").value;
document.body.style.backgroundColor = localStorage.bgColor;
}
function load() {
if (localStorage.bgColor.length == 0) {
localStorage.bgColor = "white";
}
else {
document.body.style.backgroundColor = localStorage.bgColor;
document.getElementById("colorlist").value = localStorage.bgColor;
}
}
如果你知道Firefox的一个很好的解决方案,或者对HTML中的所有浏览器都是一个很好的解决方案,那么CSS或者最好用Javascript(请不要像Jquery这样的库),我会很感激。
Freez的消遣
有时它有时不起作用。
答案 0 :(得分:2)
你应该使用
localStorage.setItem('bgColor', x);
而不是
localStorage.bgColor = x;
并且
localStorage.getItem('bgColor');
检索存储的值。
Firefox不再崩溃,因为它是使用localStorage的正确方法。