背景颜色cookie在JS

时间:2018-03-04 09:54:13

标签: javascript cookies

这是我的HTML代码,由于某些未知原因,未创建cookie。

<select id="selectedColor" onchange="changeColor();">
    <option value="select color">Select Color</option>
    <option value="red">Red</option>
    <option value="blue">Blue</option>
    <option value="yellow">Yellow</option>
</select>

在更改选择时,使用以下设置背景颜色。

function changeColor(){
    var selectedBgColor = document.getElementById("selectedColor").value;
    document.bgColor = selectedBgColor;
    document.cookie = "color="+selectedBgColor+";max-age=3600;";
}

虽然在新页面中加载cookie无法正常工作,但我从youtube上的Kudvenkat教程中获取了这些代码,他编写了相同的代码,但它在浏览器中工作,但在我的浏览器中无法正常工作。你能帮我解决这个问题吗?

window.onload(){
    if(document.cookie.length != 0){
        var splited = document.cookie.split("=");
        document.bgColor = splited[1];
        document.getElementById("selectedColor").value = splited[1];
    }
    else{
        alert("Cookie not found!");
    }
}

1 个答案:

答案 0 :(得分:0)

你应该用“;”分开首先得到财产/价值对。然后用“=”分割第一个元素(或搜索颜色键)以获得颜色值。

找颜色:

var pairs = document.cookie.split(";");
var color = pairs[0].split("=")[1];

更改颜色:

document.body.style.backgroundColor = color;