切换页面时保存功能


save functions when switch pages

我有这两个简单的函数可以更改机身背景色

<script type="text/javascript">
function lightson(){
    document.body.bgColor="#EBEBEB";
}
function lightsoff(){
    document.body.bgColor="#333333";
}
</script>

使用链接与onclick执行函数

<div style="color:red;">Lights: <a onclick="lightson();" href="#lOn">On</a> - <a onclick="lightsoff();" href="#lOff">Off</a></div>

它们附加url,但当我自己将它们更改为#lOff#lOn时,它们什么也不做,如何保存用户在网站上单击页面时单击的#lOff#lOn

我使用<body onload="lightson();">在index.php上设置背景颜色,否则它将转到默认的

要获取标签后的url部分,请使用

window.location.hash

https://developer.mozilla.org/en/window.location

您可以调用一个函数,该函数将在页面加载时检查哈希值,以确定使用哪种背景颜色。我会选择这样的东西。

window.onload = function(){
   var hash = window.location.hash;
   if(hash == "#lOn"){
      lightson();
   }else{
      lightsoff();
   }
}

尝试一些类似的东西

<script type="text/javascript">
function lightson(attr){
    console.log(attr); // '#lOn'
    document.body.bgColor="#EBEBEB";
}
function lightsoff(attr){
    console.log(attr); // '#lOff'
    document.body.bgColor="#333333";
}
</script>
<div style="color:red;">Lights: <a onclick="lightson('#lOn');" href="#lOn">On</a> - <a onclick="lightsoff('#lOff');" href="#lOff">Off</a></div>