JavaScript使用用于Web存储



以下是我要构建的网站的代码。我一直在浏览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个错误
  1. localstorage代替挫折过程中的localstorage
  2. 在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);

在本地存储中设置值

最新更新