zoukankan      html  css  js  c++  java
  • 如何实现浏览器内多个标签页之间的通信?

    方法一:使用localStorage

    使用localStorage.setItem(key,value);添加内容

    使用storage事件监听添加、修改、删除的动作   

    html代码

    JS代码-页面1

    <script type="text/javascript"> 
          $(function(){   
              $("#btn").click(function(){   
                  var name=$("#name").val();   
                  localStorage.setItem("name", name);  
              });   
          });   
      </script> 

    JS代码-页面2

    <script type="text/javascript"> 
          $(function(){  
              window.addEventListener("storage", function(event){   
                  alert(event.key + "=" + event.newValue);   
              });    
          }); 
      </script> 

    方法二、使用cookie+setInterval

    HTML代码

    1. <inputidinputid="name"><input type="button" id="btnOK"value="发送">  

    JS代码-页面1   

     
    1. $(function(){  
    2.        $("#btnOK").click(function(){  
    3.            varname=$("#name").val();  
    4.            document.cookie="name="+name;  
    5.        });  
    6.    });  

    JS代码-页面2

     
    1. //获取Cookie天的内容  
    2. function getKey(key) {  
    3.     return JSON.parse("{""+ document.cookie.replace(/;s+/gim,"","").replace(/=/gim, "":"") +""}")[key];  
    4. }  
    5. //每隔1秒获取Cookie的内容  
    6. setInterval(function(){  
    7.     console.log(getKey("name"));  
    8.  },1000);  
  • 相关阅读:
    js中的异常处理
    CSS3之box-sizing属性
    AJAX
    NaN与Null与undefiined的关系
    跳转语句之continue与break
    npm火速上手
    程序里面的‘脑筋急转弯’
    css伪元素::before与::after
    常用正则表达式、JS中的正则以及ES6的扩展
    git
  • 原文地址:https://www.cnblogs.com/xiaoan0705/p/8629724.html
Copyright © 2011-2022 走看看