在同一浏览器中的页面实例之间发送通知

立方的

是否可以使用新的HTML5 API创建一个通道,以在同一域中的页面的两个实例(或两个不同的页面)之间但在两个不同的选项卡/窗口(同一台机器)之间发送消息?

例如,我有一个使用JavaScript单页应用程序的页面,当我在一个窗口中单击“注销”或登录时,在另一个窗口中获得了登录/注销。

没有websockets,有可能做到这一点吗?也许是WebRTC。我应该如何实施这样的事情?

立方的

由于@NiettheDarkAbsol指示您可以使用localstorage在同一浏览器中发送消息。这是简短的POC代码(在Vanila JS中)

window.onload = function() {
    window.addEventListener('storage', storageEventHandler, false);

    function storageEventHandler(e) {
        console.log(localStorage.getItem(e.key));
    }
    var input = document.getElementsByTagName('input')[0];

    document.getElementsByTagName('button')[0].onclick = function() {
        localStorage.setItem('name', input.value);
    };
};

与HTML

<input/>
<button>notif</button>

唯一的限制是消息必须不同于先前的消息。如果您发送请求的ID(例如在JSON-RPC中),则可以对其进行修复。

更新:这是我为此专门制作的简单库:https : //github.com/jcubic/sysend.js

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

是否在同一会话中运行多个浏览器实例

来自分类Dev

在同一浏览器中使用的网站不同页面中的相同字体呈现不同

来自分类Dev

页面在同一浏览器中刷新时呈现的方式不同

来自分类Dev

PHP脚本的多个实例不会从同一URL同时加载到同一浏览器中

来自分类Dev

html在同一浏览器中呈现不同

来自分类Dev

如何处理浏览器中与同一个数据库同步的多个PouchDB实例?

来自分类Dev

回到同一页面,然后在浏览器中按回去后如何重置复选框

来自分类Dev

cflock不会为在同一浏览器中调用的同一URL抛出超时

来自分类Dev

Chrome中的跨浏览器实例

来自分类Dev

如何从Internet浏览器访问AWS Ubuntu实例中的NGINX欢迎页面?

来自分类Dev

JavaScript 中是否有浏览器页面实例标识符?

来自分类Dev

页面未在浏览器中缓存

来自分类Dev

在浏览器中显示加载页面

来自分类Dev

无法在浏览器中滚动页面

来自分类Dev

页面对象模型的“浏览器”的 Capybara 实例?

来自分类Dev

当用户已经在同一浏览器的不同选项卡中登录时,如何停止在(asp.net Webforms)中打开登录页面

来自分类Dev

可以有更多的浏览器从同一PHP脚本的实例接收服务器事件吗?

来自分类Dev

什么是硒的webdriver和浏览器实例中打开Firefox的实例之间的差别手动打开?

来自分类Dev

如何在Django项目的同一浏览器中同时进行多个用户登录

来自分类Dev

在多个应用程序的同一浏览器会话中绕过MFA

来自分类Dev

使用Selenium Python在同一浏览器中打开多个URL

来自分类Dev

同一字体系列在不同浏览器中的字体大小不同

来自分类Dev

Selenium:Chrome 中的同一浏览器未打开新标签页

来自分类Dev

如何检查是否从同一浏览器和IP触发了两个不同的页面或URL

来自分类Dev

Wicket-单击浏览器后退按钮时重定向到同一页面

来自分类Dev

一次关闭所有Chrome浏览器或Firefox浏览器实例

来自分类Dev

在运行同一网站的两个不同浏览器之间轻松共享文本

来自分类Dev

laravel和来自同一浏览器的多会话

来自分类Dev

同一浏览器的不同标签的不同会话

Related 相关文章

  1. 1

    是否在同一会话中运行多个浏览器实例

  2. 2

    在同一浏览器中使用的网站不同页面中的相同字体呈现不同

  3. 3

    页面在同一浏览器中刷新时呈现的方式不同

  4. 4

    PHP脚本的多个实例不会从同一URL同时加载到同一浏览器中

  5. 5

    html在同一浏览器中呈现不同

  6. 6

    如何处理浏览器中与同一个数据库同步的多个PouchDB实例?

  7. 7

    回到同一页面,然后在浏览器中按回去后如何重置复选框

  8. 8

    cflock不会为在同一浏览器中调用的同一URL抛出超时

  9. 9

    Chrome中的跨浏览器实例

  10. 10

    如何从Internet浏览器访问AWS Ubuntu实例中的NGINX欢迎页面?

  11. 11

    JavaScript 中是否有浏览器页面实例标识符?

  12. 12

    页面未在浏览器中缓存

  13. 13

    在浏览器中显示加载页面

  14. 14

    无法在浏览器中滚动页面

  15. 15

    页面对象模型的“浏览器”的 Capybara 实例?

  16. 16

    当用户已经在同一浏览器的不同选项卡中登录时,如何停止在(asp.net Webforms)中打开登录页面

  17. 17

    可以有更多的浏览器从同一PHP脚本的实例接收服务器事件吗?

  18. 18

    什么是硒的webdriver和浏览器实例中打开Firefox的实例之间的差别手动打开?

  19. 19

    如何在Django项目的同一浏览器中同时进行多个用户登录

  20. 20

    在多个应用程序的同一浏览器会话中绕过MFA

  21. 21

    使用Selenium Python在同一浏览器中打开多个URL

  22. 22

    同一字体系列在不同浏览器中的字体大小不同

  23. 23

    Selenium:Chrome 中的同一浏览器未打开新标签页

  24. 24

    如何检查是否从同一浏览器和IP触发了两个不同的页面或URL

  25. 25

    Wicket-单击浏览器后退按钮时重定向到同一页面

  26. 26

    一次关闭所有Chrome浏览器或Firefox浏览器实例

  27. 27

    在运行同一网站的两个不同浏览器之间轻松共享文本

  28. 28

    laravel和来自同一浏览器的多会话

  29. 29

    同一浏览器的不同标签的不同会话

热门标签

归档