在所有网页上和刷新后使用javascript保持更改
我有一个下拉选择器,可以让你选择带有选项“白色”和“黑色”的网站主题 我在每个页面的单独js文件中为其他页面设置了相同的选择器和js函数 当我选择一个主题选项,然后刷新或转到另一个页面时,主题颜色会回到默认的白色在所有网页上和刷新后使用javascript保持更改,javascript,html,css,Javascript,Html,Css,我有一个下拉选择器,可以让你选择带有选项“白色”和“黑色”的网站主题 我在每个页面的单独js文件中为其他页面设置了相同的选择器和js函数 当我选择一个主题选项,然后刷新或转到另一个页面时,主题颜色会回到默认的白色 问题是,在刷新网站后,如何为其他页面保留已更改的主题?将选择保存在localStorage中,并在页面加载时,将样式设置为localStorage中的值(如果有) 例如: var body = document.getElementById('body'); if (localStor
问题是,在刷新网站后,如何为其他页面保留已更改的主题?将选择保存在
localStorage
中,并在页面加载时,将样式设置为localStorage
中的值(如果有)
例如:
var body = document.getElementById('body');
if (localStorage.color) body.style.backgroundColor = localStorage.color;
function changeColor(x) {
if (x.value == 'black') {
body.style.backgroundColor = x.value;
body.style.color = 'white';
localStorage.color = 'white';
} else if (x.value == 'white') {
body.style.backgroundColor = x.value;
body.style.color = 'black';
localStorage.color = 'white';
}
}
将所选内容保存在
localStorage
中,并在页面加载时,将样式设置为localStorage
中的值(如果有)
例如:
var body = document.getElementById('body');
if (localStorage.color) body.style.backgroundColor = localStorage.color;
function changeColor(x) {
if (x.value == 'black') {
body.style.backgroundColor = x.value;
body.style.color = 'white';
localStorage.color = 'white';
} else if (x.value == 'white') {
body.style.backgroundColor = x.value;
body.style.color = 'black';
localStorage.color = 'white';
}
}
你可以把它和饼干放在一起。 使用此选项:
然后就是:
Cookies.set('color', dark);
Cookies.get('color'); // if you console log it it will say "dark"
Cookies.set('color', white);
Cookies.get('color'); // if you console log it it will say "white"
编辑:
最终代码应类似于:
HTML:
注意
如果您不使用像localhost这样的域,Cookies将不起作用
这应该可以很好地工作,但您应该对其进行改进:)您可以使用cookies进行设置。 使用此选项:
然后就是:
Cookies.set('color', dark);
Cookies.get('color'); // if you console log it it will say "dark"
Cookies.set('color', white);
Cookies.get('color'); // if you console log it it will say "white"
编辑:
最终代码应类似于:
HTML:
注意
如果您不使用像localhost这样的域,Cookies将不起作用
这应该可以很好地工作,但您应该对其进行改进:)可能重复的可能重复的可能重复的我已经在我的html头标记中添加了脚本。你能告诉我如何在我的代码中执行cookie部分吗?我已经在我的html头标签中添加了脚本。您能告诉我如何在代码中执行cookie部分吗?
<select id="Invert" onchange="changeColor()">
<option value="white">White</option>
<option value="black">Black</option>
</select>
document.body.style.backgroundColor = Cookies.get('color');
function changeColor() {
var select = document.getElementById("Invert");
var option = select.options[select.selectedIndex].value;
document.body.style.backgroundColor = option;
Cookies.set('color', option);
}