当用户从搜索结果中查看项目,然后返回到结果时,我会尝试保存页面状态。
周围的div的id为mainContainer,所以它基本上包含了我想要保存然后恢复的所有内容。
我使用的是原生javascript,而不是jquery。
这是我正在尝试的:
// Replace the search results on load.
if (('localStorage' in window) && window['localStorage'] !== null) {
if ('myPage' in localStorage && window.location.hash) {
var el = document.getElementById('mainContainer');
el.innerHTML = localStorage.getItem('myPage');
}
}
// Save the search results when leaving the page.
window.onbeforeunload = function () {
if (('localStorage' in window) && window['localStorage'] !== null) {
var el = document.getElementById('mainContainer');
var form = el.innerHTML;
localStorage.setItem('myPage', form);
}
};发布于 2014-08-28 23:21:04
据我所知,您的代码有一个语法错误
未捕获SyntaxError:意外令牌)
window.onbeforeunload = function () {
if (('localStorage' in window) && window['localStorage'] !== null) {
var el = document.getElementById('mainContainer');
var form = el.innerHTML;
localStorage.setItem('myPage', form);
}
});
//^Here除此之外,它似乎工作得很好:JSFiddle。只需更改HTML中的内容并再次运行小提琴,以前的HTML将被存储并重新加载。(顺便说一句,出于演示目的,我删除了散列检查)
https://stackoverflow.com/questions/25552396
复制相似问题