我希望有单个类型的对象,其值在多个页面的多个事件期间被更改。该对象用于在各种页面中绑定ui。
我有'main.js'文件:
var obj = { flag : false } ;
// call back method
function click() {
obj.flag = true;
}
和我的next.js文件
// call back method
function click() {
alert(obj.flag); // **alerts false** . It should alert **true** instead.
}
除了使用window.name属性之外,还有办法保留值吗?或者我是否遵循了错误的方法
答案 0 :(得分:1)
您可以使用 HTML5 localStorage 。 如文档(Safari,Mozilla等)中所述,localStorage支持字符串键/值对。
因此,您需要使用JSON.stringify将对象保存在存储空间中。
var obj = { flag : false };
// Save the object in the storage
localStorage.setItem('obj', JSON.stringify(obj));
// Get the object from storage
var objectData = localStorage.getItem('obj');
var originalObject = JSON.parse(objectData );
alert(originalObject.flag);
请参阅以下小提琴:http://jsfiddle.net/FdhzU/