以下是我要构建的网站的代码。我一直在浏览JavaScript,看看我是否有错误,但找不到我出错的地方。我正在尝试让来我网站的用户从下拉菜单中选择背景颜色。我还试图做到这一点,以便当用户回到我的网站时,背景仍然与使用Web存储相同。这是我的代码:
代码:
<script type="text/javascript">
function setBackground()
{
localstorage.bgColor = document.getElementById("Color_list").value;
document.body.style.backgroundColor = localStorage.bgColor;
}
function loadBackground()
{
if (localStorage.bgColor.length == 0)
{
localStorage.bgColor = "White";
}
else
{
document.body.style.backgroundColor = localStorage.bgColor;
document.getElementById("Color_list").value = localStorage.bgColor;
}
}
</script>
<body onLoad="javascript: loadBackground();">
<select id="Color_list">
<option value="White">White</option>
<option value="Gray">Gray</option>
<option value="Orange">Orange</option>
<option value="Purple">Purple</option>
</select>
<input type="button" value="Set Background color" onClick="javascript: setBackground();" />
</body>
您在此
中有2个错误- localstorage代替挫折过程中的localstorage
在LoadBackground内部方法执行此操作
if (!localStorage.bgColor) { localStorage.bgColor = "White"; }
if (localStorage.bgColor.length == 0)
{
localStorage.bgColor = "White";
}
此外,访问LocalStorage的属性时,它的更好的setItem和getItem
您有A typo ,尝试此更改
localStorage.bgColor = document.getElementById("Color_list").value; //it was localstorage earlier
使用 localStorage.setItem('bgColor ', document.getElementById("Color_list").value);
在本地存储中设置值