如何使用JavaScript更改所有网站页面的正文背景色?

如何使用JavaScript更改所有网站页面的正文背景色?,javascript,html,css,Javascript,Html,Css,简而言之,我有一个网站,它包含两个页面page1.html和page2.html 我在page1.html和page2.html的头部部分使用CSS样式表 <link crossorigin="anonymous" rel="stylesheet" href="myStyles.css"> 在page1.html上,我使用以下JavaScript代码修改当前页面的背景颜色: <script> document.styleSheets[0].cssRules[0].sty

简而言之,我有一个网站,它包含两个页面page1.htmlpage2.html
我在page1.html和page2.html的头部部分使用CSS样式表

<link crossorigin="anonymous" rel="stylesheet" href="myStyles.css">
在page1.html上,我使用以下JavaScript代码修改当前页面的背景颜色:

<script>
document.styleSheets[0].cssRules[0].style.backgroundColor="white";
</script>

document.styleSheets[0].cssRules[0].style.backgroundColor=“白色”;
正如预期的那样,只有page1.html的背景色会改变。 如何为所有网站页面保留此修改?我想我必须用饼干。正确的?我该怎么做?

谢谢你的回答。

设置一个cookie可以工作。更好/更广泛的解决方案是使用
LocalStorage
。这样,更改将显示在任何web浏览器中。如果您是W3S上的新手,则有一个使用LocalStorage的好例子:

根据我的代码,我有

    if (typeof Storage !== 'undefined') {
      if (localStorage) localStorage.setItem('bodyclass', color);
    }

无需使用Cookie(Cookie对服务器有用,对浏览器不有用)。 用于在本地保存当前背景色


document.styleSheets[0].cssRules[0].style.backgroundColor=“白色”;
localStorage.backgroundColor=“白色”;
在page2.html中,您必须从localStorage获取属性并使用它设置背景


var color=localStorage.backgroundColor;
如果(颜色){
document.styleSheets[0].cssRules[0].style.backgroundColor=color;
}

为什么要用JS来更改它?为什么不改变CSS文件中的颜色呢?如果要在JS中更改,为什么要修改样式表本身,而不是直接修改
document.body.style.backgroundColor
?我不明白你在这里想干什么。@IceMetalPunk。这是对我的问题的简要总结。我想创建一个页面来更改我的页面样式。@Stef1611我们了解这个问题以及您当前的解决方案。但是想知道为什么,为什么用户需要这个功能。这是给谁的?这有助于更好地形成答案。谢谢你的回答。LocalStorage似乎是一个不错的解决方案。但是如果我想在访问站点时保留此修改,它是否有效?@Stef1611如果您正确使用LocalStorage,则可以保留您的修改。请注意,这些修改将仅应用于存储它们的计算机。
    if (typeof Storage !== 'undefined') {
      if (localStorage) localStorage.setItem('bodyclass', color);
    }
try {
    var bodyClass = localStorage.getItem('bodyclass');
    if (bodyClass) $(document.body).addClass(bodyClass);
  }
catch (e) {
  error.reportError("No local storage support. Changes to body style will not be persistant");
}
document.getElementsByTagName("BODY")[0].setAttribute("style", "color:red; border: 1px solid blue;")