有没有一种方法在JavaScript中使多个网页之间进行客户端进程间通信?理想情况下,我希望在不进行任何复杂的服务器状态更新、ping等操作的情况下完成此操作,并使其仅在客户端上工作。如果我也能做这个跨浏览器,我就在天堂了哈哈。有什么想法吗?谢谢!
请尝试为邮件编写器编写此代码
function sendMessage(name, value) {
var expires = "";
document.cookie = name + "=" + value + expires + "; path=/";
}
sendMessage("test", "hello world!")
打开另一个窗口并尝试此消息侦听器
function getMessage(c_name) {
if (document.cookie.length > 0) {
c_start = document.cookie.indexOf(c_name + "=");
if (c_start != -1) {
c_start = c_start + c_name.length + 1;
c_end = document.cookie.indexOf(";", c_start);
if (c_end == -1) {
c_end = document.cookie.length;
}
return unescape(document.cookie.substring(c_start, c_end));
}
}
return "";
}
function check() {
var message = getMessage('test');
var element = document.getElementById('output');
element.innerHTML = message;
}
window.setInterval(check, 1000);
它在Chrome上运行良好,你也应该确保它在其他主要浏览器上运行,特别是在IE上
窗口间的沟通有很多种方式。它们是Window.PostMessage、本地存储、WebRTC以及现在的共享Web Workers。
每种方法都有各自的优点/缺点:
在两个独立的网站之间做跨源通信真的很笨拙。您要么必须从第一个网站执行window.open()并使用postMessage与第二个网站通信,要么必须设置这个复杂的体系结构,在其中,您使用每个站点上的隐藏IFRAME与托管在相同网站地址上的web页面进行通信,然后这些IFRAME通过本地存储或共享工作者彼此通信。这被称为“通信枢纽”。(相当复杂,对吧?)
更糟糕的是,页面间通信被视为一个安全漏洞,几乎被避开。如果有些人有他们的方式,我想跨起源的邮件将被删除。我希望看到的是一些协议增强和一些类似OAuth的技术,这样我们就可以保护该技术并使其合理。未来将有大量的数据移动到客户端,在Web页面之间共享这些数据将变得至关重要。
这就是说,不要重新制造轮子。有几个库使窗口间通信成为可能。
有时需要让扩展中的多个页面之间,或者不同扩展的多个页面之间相互传输数据,以获得彼此的状态。比如音乐播放器扩展,当用户鼠标点击popup页面中的音乐列表时,popup页面应该将用户这个指令告知后台页面,之后后台页面开始播放相应的音乐。 Chrome提供了4个有关扩展页面间相互通信的接口,分别是runtime.sendMessage、runtime.onMessage、runtime.connect和
我有这个在我的. htaccess文件: 但是每当我访问根目录上的文件时,就像它将重定向到。 我如何纠正它,以便它将正确地重定向到?
页面A通过push参数到页面B进行通信 页面A通过千牛存储数据并在B页面获取 用户可以在A页面QN.localstore存储数据,并在页面B取得数据 如果希望A页面的数据,能在B页面使用,可以在A页面使用如下代码设置数据,这里用到了JSSDK的本地存储接口。 QN.localstore.set({ query: { key: 'myData', value:
实现从书本中间翻页,页面翻动的过程可以随着手指的移动而翻动。用了UIPageViewController。这种效果如果放在iPhone设备上,由于屏幕分成两半,效果不是很好。但是如果用在iPad上,效果会好很多,和真正的书本阅读效果更接近。 [Code4App.com]
问题内容: Java相互依赖的线程如何通信? 例如,我正在使用需要来自其他线程的数据的线程构建Web搜寻器。 问题答案: 这取决于通信的性质。 它是双工的吗(即A与B对话,B与A对话)? 是数据通信还是 完成 通信? 等等。 线程间通信的最简单,最可取的形式就是等待其他线程的完成。使用以下命令最容易做到: 在第一个任务完成之前,第二个任务将不会执行。 Java 5+具有 许多 并发实用程序来处理这
问题内容: 我试图弄清楚如何通过使用Android应用程序在网页上显示实时数据。 例如,用户正在使用android应用并获得评分(回答问题)。我的网页将实时显示分数。 IV得出使用Redis的结论,但是我需要什么才能使其正常工作?我是否需要一个可与我的网页进行通信的Web套接字。这个套接字可以是python,它在其中访问数据库,然后按顺序响应分数? 我正在努力寻找这种方法到底是怎么工作的,因为这对