storage事件 js页面间通信

2018-06-24 01:47:35来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

1、概述

https://developer.mozilla.org/en-US/docs/Web/Events/storage

localStorage 或者sessionStorage存储的数据发生时会触发storage事件。

2、示例

示例中会展示所有的storage事件属性值。

 

A文件:

<!DOCTYPE html>
<html lang="zh">

    <head>
        <meta charset="UTF-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <meta http-equiv="X-UA-Compatible" content="ie=edge" />
        <title>Document</title>
    </head>

    <body>
        <script type="text/javascript">
            window.addEventListener("storage", function(e) {
                //事件目标 输出:[object Window]对象(因为绑定在window上)
                console.log("target: "+e.target);
                //事件类型 输出:storage
                console.log("type : "+e.type);
                //事件是否冒泡 输出:false
                console.log("bubbles : "+e.bubbles);
                //事件是否可撤销 输出:false
                console.log("tarcancelable: "+e.cancelable);
                //键名
                console.log("key: "+e.key);
                //键值原值
                console.log("oldValue: "+e.oldValue);
                //键值新值
                console.log("newValue: "+e.newValue);
                //触发事件的url
                console.log("url: "+e.url);
                //受影响的存储空间 输出[object Storage]
                console.log("storageArea: "+e.storageArea);
            });
        </script>
    </body>

</html>

 

B文件:

<!DOCTYPE html>
<html>

    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>

    <body>
        <script type="text/javascript">
            localStorage.clear();
            localStorage.setItem('foo', 'bar');
        </script>
    </body>

</html>

操作:先打开A页面,后打开B页面。

B页面控制台输入:

 

storage事件效果:

 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:js实现table合并相同列单元格

下一篇:nodejs+express+mongodb写api接口的简单尝试