两个页面之间的通信

今天要给大家说的是两个不同页面之间的通信,通过一个拖拽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将其转为字符串形式:

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

 1 <script>
 2    window.onload = function() {
 3       var oDiv = document.getElementById(‘div‘);
 4      window.onstorage = function(ev){
 5           var json = JSON.parse(localStorage[ev.key]);
 6
 7         oDiv.style.left = json.left + "px";
 8          oDiv.style.top = json.top + "px";
 9       }
10    }
12 </script>

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

一个简单的页面通信就可以实现了,希望能帮到大家!!!!!!!

时间: 2024-10-26 19:19:59

两个页面之间的通信的相关文章

Android两个页面之间的切换效果工具类

import android.annotation.SuppressLint; import android.app.Activity; import android.content.Context; import android.content.Intent; import android.os.Build; import android.widget.Toast; public class ActivityAnimationUtil { private Context context; pr

两个控制器之间的通信

//A控制器中 - (void)toDo{ [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(nearbyToRootVcCommunication) name:@"nearbyToRootVcCommunication" object:nil]; } //当B控制器中的viewDidLoad方法调用时,此方法也会被触发 -(void)nearbyToRootVcCommunication

pyton 编写脚本检测两台主机之间的通信状态,异常邮件通知

最近客户有一个需求要检测两台服务器之间的通信状态.要是通信是失败就需要邮件通知相关人.本来想用shell来实现,shell脚本ping 对端服务器很简单,但是shell的邮件发送比较麻烦,于是使用python实现并且用smtplib模块可以快速实现邮件的发送. 功能如下:1秒钟ping一次目标地址.代码中把你的邮箱改为自己的就可以, 代码: #coding:utf-8 import socket import smtplib import email.MIMEText import email.

Android中两个Activity之间简单通信

在Android中,一个界面被称为一个activity,在两个界面之间通信,采用的是使用一个中间传话者(即Intent类)的模式,而不是直接通信. 下面演示如何实现两个activity之间的通信. 信息的发起者为Test,接收者为Target,代码如下: Test类: 1 package com.example.testsend; 2 3 import android.content.Intent; 4 import android.support.v7.app.AppCompatActivit

两个页面之间的动画跳转。

接触到了两个页面之间的跳转带动画的.效果还不错. 一,先上项目总体图. 二,上代码. AppDelegate.m文件 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; /

HTML5中window.postMessage,在两个页面之间的数据传递

HTML5中window.postMessage,在两个页面之间的数据传递 2015年11月3日 8536次浏览 关于postMessage window.postMessage虽然说是html5的功能,但是支持IE8+,假如你的网站不需要支持IE6和IE7,那么可以使用window.postMessage.关于window.postMessage,很多朋友说他可以支持跨域,不错,window.postMessage是客户端和客户端直接的数据传递,既可以跨域传递,也可以同域传递. 应用场景 我只

让微信小程序页面之间的通信不在变得困难

一个开始 小程序开发者总会碰到各种页面之间的通信问题,实现方式也五花八门,比如... 场景还原 首先这是一个电商小程序. 有这样一个需求: 首页某个地方要展示购物车商品数量. 当我在其他页面加购了商品,首页数量刷新. 实现方式 方式一:onShow直接请求接口 Page({ onShow() { // ...一些逻辑 // 后端请求新的购物车数量 this.requestCartNum(); } }) 不足: 每次onShow都要请求接口,浪费资源. 方式二:globalData存储购物车数量,

如何实现两个页面之间进行传值

参考地址:http://blog.csdn.net/hlk_1135/article/details/52809468 B/S页面间通信 HTTP是无状态的协议.Web页面本身无法向下一个页面传递信息,如果需要让下一个页面得知该页面中的值,除非通过服务器.因此,Web页面保持状态并传递给其它页面,是一个重要的技术. Web页面之间传递数据,是Web程序的重要功能 在HTTP协议中一共有4种方法来完成这件事情: 1)URL传值:2)表单传值:3)Cookie方法:4)Session方法: 一.UR

同一个Tomcat部署两个project之间的通信问题

同一个tomcat下的两个project是无法通信的. 同一个tomcat中的project能互相调用吗 启动一个tomcat部署多个项目,那么每个项目算是一个线程还是进程呢?