我创建了一个个人网站。网站的默认颜色为黑色。我希望允许用户将颜色更改为" red,green.blue,..."
我使用jQuery完成了这个。通过更改样式表(css文件)
这是我的代码:
$(document).ready(function(){
$("img.black").click(function(){
$('link').attr('href','style_black.css');
});
$("img.red").click(function(){
$('link').attr('href','style_red.css');
});
$("img.blue").click(function(){
$('link').attr('href','style_blue.css');
});
});
但问题是当我转到同一网站的另一个页面时,颜色会恢复为默认值(黑色)
例如:我在(个人资料)页面中我改变了颜色然后转到(联系)页面,颜色恢复为默认值!
有没有办法改变整个网站的颜色? (对于网站中的所有页面)
由于
答案 0 :(得分:2)
您需要将选择内容存储在cookie或后端服务器上。例如,您可以使用jQuery-cookie plugin来存储Cookie,然后执行以下操作:
$(document).ready(function(){
// Read style selection from cookie
var style = $.cookie("style");
// Options to store cookie for 365 days for all pages
var options = { expires: 365, path: "/" };
// If style was stored in cookie, apply it
if(typeof style !== "undefined") {
$("link").attr("href","style_"+style+".css");
}
$("img.black").click(function(){
$("link").attr("href","style_black.css");
$.cookie("style","black", options);
});
$("img.red").click(function(){
$("link").attr("href","style_red.css");
$.cookie("style","red", options);
});
$("img.blue").click(function(){
$("link").attr("href","style_blue.css");
$.cookie("style","blue", options);
});
});