[英]How to carry across changes made to a CSS style over different pages
因此,我正在创建一个网站,其中有多个页面调用相同的CSS文件。 我正在合并一种方法来更改网站的背景图像。 我已经使用javascript函数在每个页面上本地工作:
function bgChange(bg) {
document.body.style.background = bg;
}
在脚本部分中定义,然后实现它:
<a href="#" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('switchon','','images/switchonhl.jpg',1)" onclick="bgChange(this.style.backgroundImage)"
style="background-image:url('images/woodbacklight.jpg')"><img src="images/switchon.jpg" width="50" height="50" id="switchon"></a>
但是,当您转到网站上的其他页面时,它会还原为原始图像。 有没有办法在不同页面上保持设置?
谢谢!
我的第一个想法是localStorage,但是可以直接在客户端上修改localStorage。 如果您满意,这是我的第一个建议(因为根据我的经验,这很容易工作)。
在客户端上存储数据的一些可能方式:
在服务器上存储数据的一些可能方式:
使用localStorage的示例(在每个页面上)
(function () {
// default background image
if (!localStorage['bg']) localStorage['bg'] = "/path/to/some/default_image.png";
document.body.style.background = localStorage['bg'];
})();
然后设置变量:
function changeBg(bg) {
localStorage['bg'] = bg;
};
首先编辑您的代码以将bg保存在localStorage(或cookie或sessionStorage)中
function bgChange(bg) {
document.body.style.background = bg;
localStorage.setItem('bgcolor', bg);
}
并将其添加到您拥有的每个页面的页面加载中。
document.onload = function(){
bg = localStorage.getItem('bg');
document.body.style.background = bg;
};
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.