associated 2 maps

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no"/>
<title>Simple Map</title>
<link rel="stylesheet" href="http://js.arcgis.com/3.13/esri/css/esri.css">
<style>
html, body, #map {
height: 100%;
width: 100%;
margin: 0;
padding: 0;
}
body {
background-color: #FFF;
overflow: hidden;
font-family: "Trebuchet MS";
}

#map1Div ,#map2Div,#splitDiv{
float:left;
}

#splitDiv{
width:2px;
background:solid 2px green;
}
</style>
<script src="http://js.arcgis.com/3.13/"></script>
<script>
var map1,map2;

require(["esri/map", "dojo/_base/connect", "dojo/domReady!"], function(Map, connect) {
map1 = new Map("map1Div", {
basemap: "topo", //For full list of pre-defined basemaps, navigate to http://arcg.is/1JVo6Wd
center: [-122.45, 37.75], // longitude, latitude
zoom: 13
});
map2 = new Map("map2Div", {
basemap: "topo", //For full list of pre-defined basemaps, navigate to http://arcg.is/1JVo6Wd
center: [-122.45, 37.75], // longitude, latitude
zoom: 13
});
var panStatus = {source:map1,panning:false,startMap:null,endMap:null};

connect.connect(map1,"onPanStart",function(){
panStatus.panning = true;
});
connect.connect(map1,"onMouseDragStart",function(){
panStatus.source = map1;
});

connect.connect(map1,"onMouseDragEnd",function(){
sameExtent(panStatus.startMap, panStatus.source!=panStatus.startMap);
});

connect.connect(map1,"onExtentChange",function(){
sameExtent(map1);
});
connect.connect(map2,"onPanStart",function(){
panStatus.panning = true;
});
connect.connect(map2,"onMouseDragStart",function(){
panStatus.source = map2;
});
connect.connect(map2,"onMouseDragEnd",function(){
sameExtent(panStatus.startMap, panStatus.source!=panStatus.startMap);
});

connect.connect(map2,"onExtentChange",function(){
sameExtent(map2);
});

function sameExtent(mm,changed){
if((changed||panStatus.source==mm)&&mm==map1){
map2.setExtent(map1.extent,true);
}else if((changed||panStatus.source==mm)&&mm==map2){
map1.setExtent(map2.extent,true);
}
}
});
</script>
</head>

<body>
<div id="map1Div"></div>
<div id="splitDiv"></div>
<div id="map2Div"></div>
</body>
</html>

时间: 2024-10-17 07:35:46

associated 2 maps的相关文章

【BZOJ】1382: [Baltic2001]Mars Maps (线段树+扫描线)

1382: [Baltic2001]Mars Maps Time Limit: 5 Sec  Memory Limit: 64 MB Description 给出N个矩形,N<=10000.其坐标不超过10^9.求其面积并 Input 先给出一个数字N,代表有N个矩形. 接下来N行,每行四个数,代表矩形的坐标. Output 输出面积并 Sample Input 2 10 10 20 20 15 15 25 30 Sample Output 225 本以为是傻逼题,没想到不容易啊- 线段树+扫描

在Google Maps 上点击标签后显示说明

JS如下: (function() { ????window.onload = function() { ? ????????// Creating an object literal containing the properties ????????// you want to pass to the map ????????var options = { ????????????zoom: 3, ????????????center: new google.maps.LatLng(37.0

笔记:MyBatis Mapper XML文件详解 - Result Maps

Result Maps(结果集) resultMap 元素是 MyBatis 中最重要最强大的元素.它就是让你远离 90%的需要从结果 集中取出数据的 JDBC 代码的那个东西, 而且在一些情形下允许你做一些 JDBC 不支持的事 情. 事实上, 编写相似于对复杂语句联合映射这些等同的代码, 也许可以跨过上千行的代码. ResultMap 的设计就是简单语句不需要明确的结果映射,而很多复杂语句确实需要描述它们 的关系,你已经看到简单映射语句的示例了,但没有明确的 resultMap.比如: <s

Win8.1应用开发之Bing Maps

这里介绍怎样进行Bing Maps的开发.首先我们须要在我们的程序中引入Bing Map的SDK.详细方法,这里推荐一个链接<win8>使用Bing地图.这样一个hello world便出来了.这里主要介绍一些主要的API.进行一些基础性的开发. 在整个开发中,给我感触最深的是.在网上资料稀少的情况下.查看研究Bing Map给出的API是最有效的方法(Map API). 或许API的凝视是模棱两可,但仅仅要我们去试.便能了解这些方法的功能. 假设遇到hello world不能显示地图,在C#

Exercise: Maps (单词统计)

A Tour of Go Exercise: Maps https://tour.golang.org/moretypes/23 WordCount (单词统计) 是一个很经典的小程序了,在很多编程入门教程中都会出现. 这道题比较简单,但也有一些知识点值得一提. 上面这个答案我是参考了网上别人写的.但在参考别人之前我也自己解题了,其中,唯一不同之处是这一句: m[word]++ 我本来写的是: _, ok := m[word] if ok { m[word]++ } else { m[word]

在Google Maps 上点击标签显示说明并保持不消失

JS如下: (function() { ????window.onload = function() { ????????// Creating an object literal containing the properties ????????// we want to pass to the map ????????var options = { ????????????zoom: 3, ????????????center: new google.maps.LatLng(37.09,

如何在Google Maps 添加多个标记

JS如下: (function() { ????window.onload = function() { ????????// Creating an object literal containing the properties ????????// we want to pass to the map ????????var options = { ????????????zoom: 12, ????????????center: new google.maps.LatLng(40.725

Guava包学习---Maps

Maps包方法列表: 还是泛型创建Map: public static <K, V> HashMap<K, V> newHashMap() { return new HashMap<K, V>(); } public static <K, V> HashMap<K, V> newHashMapWithExpectedSize(int expectedSize) { return new HashMap<K, V>(capacity(e

[转] Download Images from Multiple Maps

转载自 李旭, Tool: Download Images from Multiple Maps Summary SAS Planet是一款俄罗斯绿色免费软件,一直持续不断更新.该软件最大的一个特点就是无水印地从多种网络地图上下载影像,比如Google Earth.ESRI.Yahoo!等等,缺点是至今该软件的英文帮助还不强大,寥寥数页,俄文帮助比较详细,这对于该软件的理解和掌握有困难. 下载地址:Downloads. Example 试举一例说明下载高清影像之过程.打开SAS Planet,选

随时都可使用的Mindjet Maps for Android

Mindjet Maps for Android有着毫不逊色于桌面思维导图软件的操作功能,虽然相对电脑界面较小,不能用鼠标操作,但完美的结合了触屏功能及其移动功能后,也是能够灵活掌控界面主题. 本文为你介绍了两种可以在Mindjet Maps for Android进行移动主题的方法. 如若未下载可以点击Mindjet Maps for Android进行下载. 方法一: 长按主题,拖拽主题,你会看见主题的上一层级会标黄,根据标示来对主题进行移动,确立移动位置松开即可. 方法二: 进入剪切工具栏