javascript - 从主屏幕重新打开 ios web-app-capable 页面时,方法会保留新的 dom 元素
问题描述
我已经使用 jquery 制作了 html 网页来添加和更改 dom 中的元素。
从主屏幕启动时,我正在使用此元标记全屏打开页面。模拟类似体验的基本应用程序。
<meta name="apple-mobile-web-app-capable" content="yes">
在创建支持网络应用程序的页面以在设备上存储文件时,我之前使用过清单文件,但这些文件无法更新,对吗?
我的页面是基于 javascript 的,如果有办法以某种方式存储页面 dom 内容,我很感兴趣。想法是当从主屏幕或主页按钮双击方法重新打开网页时,它显示最后状态页面内容,而不是从头重新加载页面。
这可以使用cookie或其他东西来实现吗?
任何想法或指示都会非常感谢。
解决方案
我最终使用了本地存储。
var data = localStorage.getItem('my_data');
// for testing
alert(data);
set_data = function() {
data = localStorage.setItem('my_data', 'whatever');
// for testing
alert(localStorage.getItem('my_data'));
}
delete_data = function() {
data = localStorage.clear();
// for testing
alert(localStorage.getItem('my_data'));
}
请参阅工作 jsfiddle https://jsfiddle.net/joshmoto/j2y8o6rq/
推荐阅读
- laravel - Laravel Eloquent:仅从模型中检索枢轴值
- javascript - Joi 基于更大的模式验证特定字段
- node.js - 在我的个人项目上安装 Node-Saas 错误
- python - 如何访问对象填充字典中的值?
- python - 重新定位当前使用 Tkinter 网格定位的棋盘游戏
- git - 有没有什么方法可以让多个设备(人)在数据块中同时在不同的分支中工作?
- r - 在 Rmarkdown 中打印树时出现奇怪的字符
- postgresql - 使用 AWS/RDS `pg_read_server_files role to COPY`运行 IHP 作业
- c# - 仅当我将 Console.WriteLine 放入 Getter 时才会触发事件
- c - 将 8 位有符号整数转换为无符号整数,然后再转换为 int32