在变量中保存$(“#some-id”)以便以后访问它

时间:2015-06-11 11:57:57

标签: javascript jquery

我想将选定的jQuery对象保存到某个变量,并且能够在导航到其他页面后访问它,因为重新加载后它会消失。 这是我想要做的:

var active_accordion;

$(function() {
    active_accordion.prop('checked', true);
    $('.active-evm a').on('click', function() {
        active_accordion = $('#section-1');
        alert(active_accordion);
    });
}

每当点击链接时,我都会将$('#section-1')保存到active_accordion,导航到其他页面后,我会尝试将属性checked更改为true

当然它不起作用,因为导航后active_accordion消失了。那我在哪里可以存储它?

3 个答案:

答案 0 :(得分:1)

保存到本地存储,

example

// Store
localStorage.setItem("lastname", "Smith");
// Retrieve
document.getElementById("result").innerHTML = localStorage.getItem("lastname"); 

答案 1 :(得分:0)

您可以将其存储在会话存储sessionStorage

sessionStorage.setItem("itemKey", value);

编辑:只要浏览器会话处于活动状态,sessionStorage项就会持续存在。 如果您想要在重新启动浏览器时保留项目,可以使用localStorage,但请注意其用法,因为如果您不正确使用数据,数据往往会过时。

答案 2 :(得分:0)

有很多方法可以做到这一点

1)将这些存储在session

2)将其存储在cookies

  

注意:使用Cookies时要小心,不要放太多(我   认为有限制为4kb)。

3)您可以将其存储在系统的本地存储中 示例:将值保存到文件

4)您可以将其存储在数据库中

5)或者只使用PersistJS

  

PersistJS是不错的选择,因为你可以存储大型对象   窗口对象以及

6)您可以使用WebStorage

的帮助

7)您可以使用window.name

它是在localStorage / sessionStorage之前发起的,你可以在window.name属性中存储信息:

window.name = "stringvalue"
  

它只能存储字符串

,所以如果你想保存一个对象,你必须像上面的localStorage例子那样对它进行字符串化:

window.name = JSON.stringify({ object });
相关问题