Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在几个浏览会话中保存javascript变量?_Javascript_Cookies - Fatal编程技术网

在几个浏览会话中保存javascript变量?

在几个浏览会话中保存javascript变量?,javascript,cookies,Javascript,Cookies,我的问题可能很简单,但我就是不知道该怎么做。我想在几个浏览会话和页面重新加载过程中保存“bgid”。我曾想过使用cookies,但我不知道如何暗示它们。这是我的代码(顺便说一句,我正在使用jQuery): var-bgid=2; 变量bgnumber=3; $('#changebg')。单击(函数(){ $('body').removeClass(); $('body').addClass('class'+bgid); 如果(bgid

我的问题可能很简单,但我就是不知道该怎么做。我想在几个浏览会话和页面重新加载过程中保存“bgid”。我曾想过使用cookies,但我不知道如何暗示它们。这是我的代码(顺便说一句,我正在使用jQuery):


var-bgid=2;
变量bgnumber=3;
$('#changebg')。单击(函数(){
$('body').removeClass();
$('body').addClass('class'+bgid);
如果(bgid
你们能帮帮我吗?谢谢!:)

使用:

你可以为此目的使用。 简单地做一些像

var bgid = window.localStorage.bgid; 
您必须记住的唯一一件事是,您检索的数据将是一个字符串

例如:

if (window.localStorage.bgid !=== undefined) // check whether the data already exists 
   window.localStorage.bgid = 2; // if not, we set the 2 as default value
然后使用window.localStorage.bgid访问bgid。若你们想得到一个数字,可以使用parseInt或者在窗口前面加上“+”

如果要保存数据,只需键入

window.localStorage.bgid = newValue;

我想建议你使用


if(localStorage.getItem(“bgid”))
{
var bgid=parseInt(localStorage.getItem(“bgid”);
}
其他的
{
var-bgid=2;
}
变量bgnumber=3;
$('#changebg')。单击(函数(){
$('body').removeClass();
$('body').addClass('class'+bgid);
如果(bgid
如果我是你,我不会使用cookies,但是大多数浏览器实现了localstorage

例如:

<script> 

var bgid = 2;
if(localStorage.getItem("bgid") != null){// this checks bgid exists
    bgid = localStorage.getItem("bgid");//and this sets bgid to the localstorage value
}
var bgnumber = 3;

$('#changebg').click(function() {
$('body').removeClass();
$('body').addClass('class' + bgid);
if(bgid < bgnumber + 1){
    bgid = bgid + 1; 
}
else{
    bgid = 2; 
}
localStorage.setItem("bgid");// this sets the value 
});

</script>;

var-bgid=2;
如果(localStorage.getItem(“bgid”)!=null){//则检查bgid是否存在
bgid=localStorage.getItem(“bgid”);//这将bgid设置为localStorage值
}
变量bgnumber=3;
$('#changebg')。单击(函数(){
$('body').removeClass();
$('body').addClass('class'+bgid);
如果(bgid

这应该对您有用,但上面的答案应该足够了

谢谢,但这不起作用,因为每次我重新加载页面时,脚本都会被加载,并且“localStorage.setItem('bgid','2');”得到调用,因此每次重新加载时,bgid都会得到2!localStorage.getItem('bgid')?2:localStorage.getItem('bgid')“我考虑过使用cookies,但我不知道如何暗示(原文如此)”然后使用google或Stack Overflow中的搜索功能,而不是问另一个问题。在发布问题之前,您应该确保进行研究。谢谢,很有效!:)如果可行的话,请你投票支持我的答案好吗?
window.localStorage.bgid = newValue;
<script>
    if (localStorage.getItem("bgid"))
    {
        var bgid = parseInt(localStorage.getItem("bgid"));
    }
    else
    {
        var bgid = 2;
    }
    var bgnumber = 3;

    $('#changebg').click(function () {
        $('body').removeClass();
        $('body').addClass('class' + bgid);
        if (bgid < bgnumber + 1)
        {
            bgid = bgid + 1;
        }
        else
        {
            bgid = 2;
        }
        localStorage.setItem("bgid", bgid);
    });
</script>
<script> 

var bgid = 2;
if(localStorage.getItem("bgid") != null){// this checks bgid exists
    bgid = localStorage.getItem("bgid");//and this sets bgid to the localstorage value
}
var bgnumber = 3;

$('#changebg').click(function() {
$('body').removeClass();
$('body').addClass('class' + bgid);
if(bgid < bgnumber + 1){
    bgid = bgid + 1; 
}
else{
    bgid = 2; 
}
localStorage.setItem("bgid");// this sets the value 
});

</script>;