两个页面之间的通信

Posted 维尼熊的进阶路

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了两个页面之间的通信相关的知识,希望对你有一定的参考价值。

今天要给大家说的是两个不同页面之间的通信,通过一个拖拽demo来模拟:

首先,写好基础的拖拽代码:

<script>
window.onload=function(){
var oDiv=document.getElementById(div’);
oDiv.onmousedown=function(ev){
 var ev=window.event ||ev;
var disX=ev.clientX-oDiv.offsetLeft;
var disY=ev.clientY-oDiv.offsetTop;
document.onmousemove=function(ev){
var factX=ev.clientX-disX;
var factY=ev.clientY-disY;
oDiv.style.left=factX+px;
oDiv.style.top=factY+px;
localStorage.json=JSON.stringify({left:oDiv.offsetLeft,top:oDiv.offsetTop});
}
document.onmouseup=function(){
     document.onmousemove=null;
}
}
}
</script>

这是将div拖动变化的值存入到本地存储localStorage,用JSON.stringify将其转为字符串形式:

localStorage.json=JSON.stringify({left:oDiv.offsetLeft,top:oDiv.offsetTop});

然后新建一个demo,获取本地的数据:

<script>
 window.onload=function(){
    var oDiv=document.getElementById(div);
  window.onstorage=function(ev){
     var json=JSON.parse(localStorage[ev.key]);
oDiv.style.left=json.left+"px";
oDiv.style.top=json.top+"px";
}
}
</script>

通过onstorage这个方法实现两个页面之间的通信,获取到本地存储的数据,转成数字实现两个页面的同步

 

以上是关于两个页面之间的通信的主要内容,如果未能解决你的问题,请参考以下文章

两个页面之间的通信

两个页面之间的通信

片段和服务器之间的通信问题

这两个代码片段之间有区别吗?如果有,那又如何? [复制]

与另一个片段通信的片段接口

在片段和活动之间进行通信 - 最佳实践