javascript - 更新不同页面上的数据
问题描述
我有这两页
第 1 页:
<!DOCTYPE html>
<html>
<head>
<title>page 1</title>
</head>
<body>
<input id="button" type="submit" value="Submit" onclick="save();"/>
<div id ="stat"></div>
<script type="text/javascript">
var x=1 ;
var test = document.getElementById("stat");
function save() {
x+=1;
test.innerHTML=x;
localStorage.setItem("value",x);
}
</script>
</body>
</html>
第2页:
<!DOCTYPE html>
<html>
<head>
<title>page 2</title>
</head>
<body>
<div id ="stat"></div>
<script type="text/javascript">
var stat = document.getElementById("stat");
document.addEventListener('storage', function(e) {
stat.innerHTML=localStorage.getItem("value");
}, false);
</script>
</body>
</html>
我想做的是
在浏览器的两个不同选项卡(或窗口)上打开
Page 1
和。Page 2
去
Page 1
单击按钮。
值得
Page 1
到更新。中的值Page 2
也会同时更新。单击按钮多少次您想要并获得相同的行为。
我搜索了一下,得到了使用本地存储的想法,但这不起作用。我怎样才能做到这一点?
解决方案
正如这里所说的https://www.w3schools.com/html/html5_webstorage.asp:
Web 存储是按来源(按域和协议)的。来自一个来源的所有页面都可以存储和访问相同的数据。
因此,两个离线网页不能共享同一个本地存储。它们必须从同一个域打开。一种方法是从 localhost Web 服务器打开它们。然后它将完美地工作。
推荐阅读
- python - 无法在 Windows 上安装 gambit python api
- javascript - React 中表单内的条件渲染不起作用
- c# - C#/WPF 如何在循环之间等待但仍允许用户单击按钮(非必需)
- jquery - Magicline 边框动画 - 从活动类开始动画
- java - 尝试工作并由用户输入以更改值
- c# - 是否可以以编程方式启用基于服务器的 SharePoint 集成?
- python - 如何返回,因为它在列表中具有最大 Sum 值
- javascript - Angular 反应式表单提交事件
- bash - 获取 bash 函数的除前 N 个参数之外的所有参数
- video-streaming - ThingsBoard 仪表板的视频源