加载另一个相同页面时,使用新数据激活第一个网页
Activate first webpage with new data when another of the same page is loaded
我正在尝试编写一个小型Web应用程序,该应用程序能够从URL参数中获取数据并显示有关该数据的适当信息。页面不会在服务器端呈现,因此所有参数都告诉该 javascript 要发送到我的 JSON API 并加载到视图中的内容。该页面是从另一个桌面应用程序加载的,该应用程序对要在它加载的 URL 中使用的数据进行编码,因为这是我可以让它与网站通信的唯一方法......因此,例如,桌面应用程序将生成一个链接,例如
http://myapp/?room=1&tile=7
这在第一个实例中工作正常,但我希望它像许多桌面应用程序一样工作,如果您再次加载应用程序,它只会使用新数据调出原始实例。我知道新页面必须至少短暂加载,但是有没有办法让它只获取新数据,将其发送到页面的第一个实例,然后自行关闭?当我有一个主页并且我使用 window.open() 打开第二个时,我知道该怎么做,我可以强制重新加载。但是我从来没有在手动打开第一个实例的情况下这样做,然后我需要与之交互。
这个实现的一个主要问题是window.close()不起作用,所以你必须要求用户关闭窗口。这里谈论"问题"或功能 https://stackoverflow.com/a/19768082/3951400
<!doctype html>
<html>
<head>
<script>
function update() {
localStorage.setItem('lastUpdate', Date.now());
// Here you could check the data-item for changes
}
function setData() {
localStorage.setItem('data', window.location.search);
}
var t, lastUpdate = localStorage.getItem('lastUpdate');
if(lastUpdate === null || (Date.now() - Number(lastUpdate) > 1000)) {
// Likely no other window
setData();
t=setInterval(update, 100);
} else {
setData();
alert("please close this. ctrl+w");
}
</script>
</head>
<body>
Hello
</body>
</html>
相关文章:
- 使用jquery将mysql数据获取到新的表行中
- Highcharts系列.数据数据类型限制
- 当以表单形式提交时,是否可以在PHP中访问新的数据* HTML5 / Javascript值?
- jQuery没有't返回新的数据属性
- 在jQuery mobile/java脚本的TextBoxes中动态添加未加载的数据.数据具有[object HTMLI
- 严格模式下的图像数据数据分配
- 具有持久数据(数据存储)的Chrome扩展程序
- Java客户端卡在来自nodejs服务器的数据数据流中
- 用新的数据销毁方法或reloadChildren重新加载dynatree似乎不起作用
- 如何刷新我的项目列表在winapp当我插入一个新的数据在sqlite (javascript &html)
- 如果有新的数据,则停止重复插入
- Javascript HighCharts改变数据,而不是添加新的数据
- 高级javascript源数据-数据表
- 等待执行功能,直到新的数据反映在浏览器中
- highcharts:当添加新的数据系列时,如果标题与现有的Y轴不同,则添加新的Y轴
- 如何用javaScript添加新的数据属性(使用skrollr.js)
- 向折线图添加新的数据点条目
- 在 HTML (SVG) 元素中包含数据/数据密钥
- 替换span与新的数据,但新的jquery调用不工作
- D3js的select .enter()取决于新添加数据的顺序