花了财富值下载的   贡献给大家  别忘记点个赞


类: Map

描述
esri.Map类创建一个容器和为增加图层,图形,信息窗口和其它导航控件所必需的DOM结构。 


地图通常使用DIV添加到页面。地图的宽度和高度被初始化为DIV容器的宽度和高度。 


第一个图层添加到地图后,Map.onLoad事件被触发。此时,map对象的功能可以完全使用了。Map.onLoad的处理函数应该可以用来添加地图内容,改变地图行为了。 


对于使用地图类的介绍,见添加地图. 
类层次结构
esri.Map
构造函数
构造函数 描述 
esri.Map(divId, options?) 在给定的HTML容器中创建地图,HTML容器通常是DIV。地图大小和容器大小一致。Map对象的构造方法可以包含可选参数,可选参数的顺序是任意的。 


属性表
属性 类型 描述 
extent Extent  地图的当前范围。该属性是只读的。 
graphics GraphicsLayer  从GraphicsLayer中增加删除图形。 
graphicsLayerIds String[]  地图里当前GraphicsLayers的数组。 
height Number  地图的当前高度,高度单位是屏幕像数 
id String  地图位于页面的HTML DIV或其他元素的引用。该属性在地图构造函数里设置。 
infoWindow InfoWindow  在地图上显示信息窗口 
isClickRecenter Boolean  当属性为true,按shift+click键重定义地图中心点。 
isDoubleClickZoom Boolean  当属性为true,双击放大地图可用,允许用户使用鼠标双击放大和重定义地图中心点。 
isKeyboardNavigation Boolean  当属性为true,键盘导航可用。该属性允许用户用箭头键移动地图,用+和-键缩放地图。 
isPan Boolean  当属性为true,可以使用鼠标移动地图。 
isPanArrows Boolean  当属性为true,在地图边缘显示移动箭头。 
isRubberBandZoom Boolean  当属性为true,伸缩线可用。允许用户使用鼠标画一个边界框缩放区域。 
isScrollWheelZoom Boolean  当属性为true,可用鼠标滚动缩放地图 
isShiftDoubleClickZoom Boolean  当属性为true,可用shift键+双击鼠标放大地图。这允许用户使用shift + 鼠标双击去放大和重定向地图中心。 
isZoomSlider Boolean  当属性为true,地图上显示缩放滑动条。 
layerIds String[]  加到地图里的当前TiledMapServiceLayers和DynamicMapServiceLayers的数组 
loaded Boolean  第一个图层被加载后,属性值被设置为true 
position Point  该屏幕坐标的点几何体代表地图容器的左上角。这个坐标也担当了地图和GraphicsLayer事件返回的所有屏幕坐标的原点。 
spatialReference SpatialReference  地图的空间参考。支持的空间参考列表,见投影坐标系统和地理坐标系统。 
width Number  地图当前宽度,宽度单位是屏幕像数。 


方法表
地图功能:
方法 返回值 描述 
addLayer(layer, index?) Layer  增加ESRI图层到地图。


v1.4增加了返回Layer对象 
getInfoWindowAnchor(screenCoords) String  设置调用InfoWindow.show方法时信息窗口的定位点。 
getLayer(id) Layer  返回地图一个单独的图层。 
getLevel() Number  获得当前地图的级别ID。仅仅ArcGISTiledMapService有效。 
removeAllLayers() none  从地图上删除所有图层。 


当图层被删除是,已定义的地图范围,空间参考,切片模式不会修改。当下一个图层被加到地图,图层以相同的范围和空间参考显示。 
removeLayer(layer) none  删除地图的指定图层。 
reorderLayer(layer, index) none  修改地图里图层顺序。 
reposition() none  在页面上重新放置地图DIV。当地图已经被重新放置后需要使用这个方法。 
resize() none  调整地图DIV。当重新调整map DIV大小后这个方法要被使用。 
setExtent(extent, fit?) none  设置地图范围。范围必需参照和地图一样的空间参考 
setLevel(level) none  设置地图到指定级别ID。基于当前地图中心点缩放到新的级别。仅仅对ArcGISTiledMapService图层有效。 
setMapCursor(cursor) none  设置地图默认鼠标形状。除了拖拽地图进行移动或使用SHIFT+拖拽放大地图时外,鼠标位于地图上时该指针总被显示。如果没有设置,地图使用系统默认指针,通常使用箭头。 
toMap(screenPoint) Point  转换单个屏幕点坐标或屏幕点坐标数组为地图坐标。 
toScreen(mapPoint) Point  转换单个地图点坐标或地图点坐标的数组为屏幕坐标。 


地图导航:
方法 返回值 描述 
centerAndZoom(mapPoint, levelOrFactor) none  地图居中并缩放。 
centerAt(mapPoint) none  以指定地图坐标作为中心点坐标重定位地图。 
disableClickRecenter() none  不允许单击地图来重定位地图中心点。 
disableDoubleClickZoom() none  不允许双击地图来放大地图一个级别并重定位地图中心点 
disableMapNavigation() none  除了滑动条和移动箭头,不允许其它所有地图导航。 
disablePan() none  不允许用鼠标移动地图。 
disableRubberBandZoom() none  不允许使用边界框放大或缩小地图。 
disableScrollWheelZoom() none  不允许使用鼠标滚动滑轮放大或缩小地图。 
disableShiftDoubleClickZoom() none  不允许shift键+鼠标双击放大地图并重定位地图中心点。 
disbleKeyboardNavigation() none  不允许使用键盘移动和缩放地图。 
enableClickRecenter() none  允许用户单击地图来重定位中心点。 
enableDoubleClickZoom() none  允许用户双击地图放大一个级别并重定位地图中心点。 
enableKeyboardNavigation() none  允许用户使用键盘移动和缩放地图。 
enableMapNavigation() none  允许所有地图导航。 
enablePan() none  允许使用鼠标移动地图。 
enableRubberBandZoom() none  允许使用划定边界框放大或缩小地图。 
enableScrollWheelZoom() none  允许用户用鼠标滑轮放大或缩小地图。 
enableShiftDoubleClickZoom() none  允许用使用shift+双击鼠标去放大地图一个级别并重定位地图中心点。 
hidePanArrows() none  隐藏地图移动指针。 
hideZoomSlider() none  隐藏地图缩放滚动条。 
panDown() none  向南移动地图。 
panLeft() none  向西移动地图。 
panLowerLeft() none  向西南移动地图。 
panLowerRight() none  向东南移动地图。 
panRight() none  向东移动地图。 
panUp() none  向北移动地图。 
panUpperLeft() none  向西北移动地图。 
panUpperRight() none  向东北移动地图。 
showPanArrows() none  显示地图移动指针。 
showZoomSlider() none  显示缩放滚动条。 


事件
事件 描述 
onClick(event)  当用户使用鼠标单击地图且鼠标在HTML页面的地图范围内时触发。 
onDblClick(event)  当用户在地图上双击鼠标且鼠标在html页面的地图范围内时触发该事件 
onExtentChange(extent, delta, levelChange, lod)  当地图范围已经修改触发该事件。 
onKeyDown(keyEvent)  当键盘某键被按下时触发该事件 
onKeyUp(keyEvent)  当键盘某键被释放时触发该事件。 
onLayerAdd(layer)  图层被添加到地图时触发该事件。 
onLayerRemove(layer)  图层已经被删除后触发事件 
onLayerReorder(layer, index)  当地图图顺序已经被改变时触发事件。 
onLayersRemoved()  所有图层被删除后触发事件 
onLayersReordered(layerIds)  所有图层被重新排序是触发事件。 
onLoad(map)  第一个或基础图层被成功添加到地图时触发事件。 
onMouseDown(event)  当鼠标按钮被按下且鼠标指针在HTML页面的地图范围里时触发事件。 
onMouseDrag(event)  鼠标被拖转直到鼠标按钮被释放时触发事件。 
onMouseDragEnd(event)  当鼠标按钮被释放并且用户停止拖拽鼠标时触发事件。 
onMouseDragStart(event)  当鼠标按钮被按下并用户开始拖拽鼠标时触发事件。 
onMouseMove(event)  鼠标指针在地图范围上移动时触发事件。通常该事件用于用户移动鼠标指针时显示当前地图x,y坐标。 
onMouseOut(event)  当鼠标移出HTML页的地图范围时触发事件。 
onMouseOver(event)  鼠标移入HTML页面的地图范围时触发事件。 
onMouseUp(event)  当鼠标按钮被释放并且鼠标指针在HTML页面的地图范围内时触发事件。 
onMouseWheel(event)  鼠标滚轮滚动时触发事件。 
onPan(extent, delta)  地图移动过程中触发事件。 
onPanEnd(extent, endPoint)  移动完成时触发事件。 
onPanStart(extent, startPoint)  用户开始移动时触发事件。 
onReposition(x, y)  地图DIV被重新定位时触发事件。 
onResize(extent, height, width)  包含地图的DIV已经被调整大小时触发事件。 
onUnload(map)  刷新页面时触发事件。  
onZoom(extent, zoomFactor, anchor)  缩放过程中触发事件。 
onZoomEnd(extent, zoomFactor, anchor, level)  缩放完成时触发事件。 
onZoomStart(extent, zoomFactor, anchor, level)  用户开始缩放时触发事件。 


构造方法详细信息
esri.Map(divId, options?)
在给定的HTML容器里创建地图,容器通常是DIV元素。地图大小就是容器的大小。Map对象的构造方法可以包含可选参数,可选参数的顺序是任意的。 
参数:
<String> divId 必需的  引用地图的容器ID。这个值是必需的。  
<Object> options 可选项  可选参数。见选选项列表。  


可选项:
<Boolean> displayGraphicsOnPan 当属性为true,移动时显示图。当值为false,移动期间图形被关闭。设置为false可以提升IE性能。默认值为true。默认值是true。  
<Extent> extent 如果提供,地图的范围和投影被设置为Extent属性。一旦投影被设置,所有图层都必须能够在已定义的投影方式下绘制。ArcGISTiledMapServiceLayer切片模式必须和地图的投影匹配。范围的投影自v1.2起在地图构造函数里被接受。 




      function init() {


        var map = new esri.Map("map", {
          extent: new esri.geometry.Extent({xmin:-20098296,ymin:-2804413,xmax:5920428,ymax:15813776,spatialReference:{wkid:54032}})
        });
        var dynamicMSLayer = new esri.layers.ArcGISDynamicMapServiceLayer
              ("http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Specialty/ESRI_StatesCitiesRivers_USA/MapServer")
        map.addLayer(dynamicMSLayer);
      }
 
<Object> layer 图层被用来初始化地图。这将是基本图层。对象格式是{type, url}。  
<LOD[]> lods 如果提供,地图按指定的细节等级被初始化。为了被显示,添加到地图的所有ArcGISTiledMapServiceLayers必需有匹配的分辨率。(自v1.2起) 




        var lods = [
          {"level" : 0, "resolution" : 0.010986328125, "scale" : 4617149.97766929},
          {"level" : 1, "resolution" : 0.0054931640625, "scale" : 2308574.98883465},
          {"level" : 2, "resolution" : 0.00274658203125, "scale" : 1154287.49441732},
          {"level" : 3, "resolution" : 0.001373291015625, "scale" : 577143.747208662},
          {"level" : 4, "resolution" : 0.0006866455078125, "scale" : 288571.873604331}
        ];


        map = new esri.Map("map", {
          lods: lods
        });
 
<Boolean> nav 在地图上显示移动按钮。当值为false,移动箭头不会显示。默认值是false。  
<Boolean> showInfoWindowOnClick 当用户点击图形,如果图形定义了信息模板,默认行为是显示信息窗口。 当属性为true,默认行为被认同。默认值是true。  
<Boolean> slider 在地图上显示滑动条。当值为false,滑动条不显示。默认值是true。  


代码片段:


本例中,一个新的名为"mymap"的地图被创建,并被放置在"mapDiv"容器里面。


var myMap;
function init() {
  //create map
  myMap = new esri.Map("mapDiv");


  ...
}
接下来的代码中,地图容器用DIV id引用。


<div id="mapDiv" style="width:600px; height:600px; border:1px solid #000;"></div>
在这个第二个例子,可选的extent参数也被包含在容器内。 


var myMap = new esri.Map("mapDiv", { extent: new esri.geometry.Extent
(-124.71, 31.89, -113.97, 42.63) });
本例创建了一个没有滚动条和移动箭头的的地图。 
var myMap = new esri.Map("mapDiv", { slider:false, nav:false });
本例中,地图移动中图形被关闭。 
var myMap = new esri.Map("mapDiv", { displayGraphicsOnPan:false });


如果仅仅为Internet Explorer在移动时关闭图形显示,使用下面的构造函数: 
var myMap = new esri.Map("mapDiv", { displayGraphicsOnPan:! dojo.isIE });
属性详细信息
<Extent> extent
以地图单位表示的地图当前范围。关于范围的信息,详见在地图里设置和使用范围。
代码片段:


function showExtent() {
  var s = "";
  s = "XMin: "+ myMap.extent.xmin
      +" YMin: " + myMap.extent.ymin
      +" XMax: " + myMap.extent.xmax
      +" YMax: " + myMap.extent.ymax;
      dojo.byId("info").innerHTML = s;
}




参见:
setExtent   onExtentChange   onPan   onZoom   onZoomEnd   onZoomStart   
<GraphicsLayer> graphics
提供访问地图的图形图层。
参见:
showInfoWindow   Graphic   GraphicsLayer   
<String[]> graphicsLayerIds
地图里当前GraphicsLayers的数组。 (自v1.4起)
参见:
layerIds   
<Number> height
地图的当前高度,高度单位是屏幕像数。这个属性是只读的。地图高和宽通常设置在HTML DIV 或其他包含地图容器的HTML元素里。
代码片段:


function getMapWidthHeight() {
  alert("Width = " + myMap.width + "; Height = " + myMap.height);
}  


<String> id
地图位于页面的HTML DIV或其他元素的引用。该属性在地图构造函数里设置。
代码片段:


myMap = new esri.Map("mapDiv");


<InfoWindow> infoWindow
在地图上显示信息窗口
<Boolean> isClickRecenter
当属性为true,按shift+click键重定义地图中心点。详见Map navigation
已知值: true | false 
默认值: true 
代码片段:


function stopClickRecenter() {
  myMap.disableClickRecenter();
  dojo.byId("stopClickRecenter").value = myMap.isClickRecenter;
}


参见:
disableClickRecenter   enableClickRecenter   
<Boolean> isDoubleClickZoom
当属性为true,双击放大地图可用,允许用户使用鼠标双击放大和重定义地图中心点。 详见地图导航。
已知值: true | false 
默认值: true 
代码片段:


dojo.byId("theDoubleClickZoom").value = myMap.isDoubleClickZoom;




参见:
disableDoubleClickZoom   enableDoubleClickZoom   isShiftDoubleClickZoom   
<Boolean> isKeyboardNavigation
当属性为true,键盘导航可用。该属性允许用户用箭头键移动地图,用+和-键缩放地图。 详见地图导航。
已知值: true | false 
默认值: true 
代码片段:


dojo.byId("keyboardNavigationStatus").value = myMap.isKeyboardNavigation;


参见:
disableKeyboardNavigation   enableKeyboardNavigation   
<Boolean> isPan
当属性为true,可以使用鼠标移动地图。 详见地图导航。
已知值: true | false 
默认值: true 
代码片段:


dojo.byId("panStatus").value = myMap.isPan;


参见:
disablePan   enablePan   
<Boolean> isPanArrows
当属性为true,在地图边缘显示移动箭头。 详见地图导航。
已知值: true | false 
默认值: false 
参见:
hidePanArrows   showPanArrows   
<Boolean> isRubberBandZoom
当属性为true,伸缩线可用。允许用户使用鼠标画一个边界框放大区域。 详见地图导航。
已知值: true | false 
默认值: true 
代码片段:


dojo.byId("checkRubberBandZoom").value = myMap.isRubberBandZoom;


参见:
disableRubberBandZoom   enableRubberBandZoom   
<Boolean> isScrollWheelZoom
当属性为true,可用鼠标滚动缩放地图 详见地图导航。
已知值: true | false 
默认值: true 
代码片段:


function stopScrollWheelZoom() {
  myMap.disableScrollWheelZoom();
  dojo.byId("stopScrollWheelZoom").value = myMap.isScrollWheelZoom;
}




参见:
disableScrollWheelZoom   enableScrollWheelZoom   
<Boolean> isShiftDoubleClickZoom
当属性为true,可用shift键+双击鼠标放大地图。这允许用户使用shift + 鼠标双击去放大和重定向地图中心。 详见地图导航。 (As of v1.2)
已知值: true | false 
默认值: true 
代码片段:


dojo.byId("theShiftDoubleClickZoom").value = myMap.isShiftDoubleClickZoom;




参见:
disableShiftDoubleClickZoom   enableShiftDoubleClickZoom   isDoubleClickZoom   
<Boolean> isZoomSlider
当属性为true,地图上显示缩放滑动条。 详见 Map navigation 。
已知值: true | false 
默认值: true 
参见:
hideZoomSlider   showZoomSlider   
<String[]> layerIds
加到地图里的当前TiledMapServiceLayers和DynamicMapServiceLayers的数组
代码片段:


function getLayerProperties() {
  for(var j = 0; j < map.layerIds.length; j++) {
    var layer = map.getLayer(map.layerIds[j]);
    alert(layer.id + ' ' + layer.opacity + ' ' + layer.visibility);
  }
}


参见:
graphicsLayerIds   
<Boolean> loaded
第一个图层被加载后,属性值被设置为true
已知值: true | false 
参见:
onLoad   onUnload   
<Point> position
该屏幕坐标的点几何体代表地图容器的左上角。这个坐标也担当了地图和GraphicsLayer事件返回的所有屏幕坐标的原点。 (As of v1.3)
<SpatialReference> spatialReference
地图的空间参考。支持的空间参考列表,见投影坐标系统和地理坐标系统。
<Number> width
地图当前宽度,宽度单位是屏幕像数。 这个属性是只读的。地图高和宽通常设置在HTML DIV 或其他包含地图容器的HTML元素里。
代码片段:


function getMapWidthHeight() {
  alert("Width = " + myMap.width + "; Height = " + myMap.height);
}  


方法详细信息
addLayer(layer, index?)
增加ESRI图层到地图。


v1.4增加了返回Layer对象
返回值: Layer
输入参数:
<Layer> layer 必需的  被加到地图的图层。 
<Number> index 可选项  增加图层的指定的索引。如果没有索引被指定或指定索引大于当前图层数量,图层自动应用到地图里的图层列表并且索引是标准化的。(自v1.3起)  


参见:
onLayerAdd   
centerAndZoom(mapPoint, levelOrFactor)
地图居中并缩放。 (As of v1.2)
返回值: none
输入参数:
<Point> mapPoint 必需的  地图在指定的X,Y位置居中。 
<Number> levelOrFactor 必需的  当使用ArcGISTiledMapServiceLayer,地图缩放到指定的级别。当使用时,地图按指定的系数放大或缩小。例如,用0.5放大2倍,用2.0缩小两倍。 


centerAt(mapPoint)
以指定地图坐标作为中心点坐标重定位地图。
返回值: none
输入参数:
<Point> mapPoint 必需的  地图在指定x,y位置居中。 


disableClickRecenter()
不允许单击地图来重定位地图中心点。 详见地图导航。
返回值: none
代码片段:


function init() {
  myMap = new esri.Map("mapDiv");
  myMap.disableClickRecenter();
}




参见:
enableClickRecenter   isClickRecenter   
disableDoubleClickZoom()
不允许双击地图来放大地图一个级别并重定位地图中心点 详见地图导航。
返回值: none
代码片段:


function init() {
  myMap = new esri.Map("mapDiv");
  myMap.disableDoubleClickZoom();
}




参见:
enableDoubleClickZoom   isDoubleClickZoom   disableShiftDoubleClickZoom   
disableMapNavigation()
除了滑动条和移动箭头,不允许其它所有地图导航。 详见地图导航。
返回值: none
disablePan()
不允许用鼠标移动地图。 详见地图导航。
返回值: none
代码片段:


function noPan() {
  myMap.disablePan();
}




参见:
enablePan   isPan   
disableRubberBandZoom()
不允许使用边界框放大或缩小地图。 详见地图导航。
返回值: none
代码片段:


function noRubberBand() {
  myMap.disableRubberBandZoom();
}




参见:
enableRubberBandZoom   isRubberBandZoom   
disableScrollWheelZoom()
不允许使用鼠标滚动滑轮放大或缩小地图。 详见地图导航。
返回值: none
代码片段:


function stopScrollWheelZoom() {
  myMap.disableScrollWheelZoom();
  dojo.byId("stopScrollWheelZoom").value = myMap.isScrollWheelZoom;
}




参见:
enableScrollWheelZoom   isScrollWheelZoom   
disableShiftDoubleClickZoom()
不允许shift+鼠标双击放大地图并重定位地图中心点。 详见地图导航。 (As of v1.2)
返回值: none
代码片段:


function init() {
  myMap = new esri.Map("mapDiv");
  myMap.disableShiftDoubleClickZoom();
}




参见:
enableShiftDoubleClickZoom   disableDoubleClickZoom   isShiftDoubleClickZoom   
disbleKeyboardNavigation()
不允许使用键盘移动和缩放地图。 详见地图导航。
返回值: none
代码片段:


function init() {
  myMap = new esri.Map("mapDiv");
  myMap.disableKeyboardNavigation();
}




enableClickRecenter()
允许用户单击地图来重定位中心点。 详见地图导航。
返回值: none
代码片段:


function okClickRecenter() {
  myMap.enableClickRecenter();
}




参见:
isClickRecenter   disableClickRecenter   
enableDoubleClickZoom()
允许用户双击地图放大一个级别并重定位地图中心点。 详见地图导航。
返回值: none
代码片段:


function okDoubleClickZoom() {
  myMap.enableDoubleClickZoom();
}




参见:
isDoubleClickZoom   disableDoubleClickZoom   enableShiftDoubleClickZoom   
enableKeyboardNavigation()
允许用户使用键盘移动和缩放地图。 详见地图导航。
返回值: none
代码片段:


function init() {
  myMap = new esri.Map("mapDiv");
  myMap.enableKeyboardNavigation();
}




参见:
isKeyboardNavigation   disableKeyboardNavigation   
enableMapNavigation()
允许所有地图导航。 详见地图导航。
返回值: none
enablePan()
允许使用鼠标移动地图。 详见地图导航。
返回值: none
代码片段:


function panAgain() {
  myMap.enablePan();
}




参见:
isPan   disablePan   
enableRubberBandZoom()
允许使用划定边界框放大或缩小地图。 详见地图导航。
返回值: none
代码片段:


function allowRubberBand() {
  myMap.enableRubberBandZoom();
}




参见:
isRubberBandZoom   disableRubberBandZoom   
enableScrollWheelZoom()
允许用户用鼠标滑轮放大或缩小地图。 详见地图导航。
返回值: none
代码片段:


function allowScrollWheelZoom() {
  myMap.enableScrollWheelZoom();
}




参见:
isScrollWheelZoom   disableScrollWheelZoom   
enableShiftDoubleClickZoom()
允许用使用shift+双击鼠标去放大地图一个级别并重定位地图中心点。 详见地图导航。 (As of v1.2)
返回值: none
代码片段:


function okShiftDoubleClickZoom() {
  myMap.enableShiftDoubleClickZoom();
}




参见:
enableDoubleClickZoom   isShiftDoubleClickZoom   disableShiftDoubleClickZoom   
getInfoWindowAnchor(screenCoords)
设置调用InfoWindow.show方法时信息窗口的定位点。
返回值: String
输入参数:
<Point> screenCoords 必需的  以屏幕单位表示的定位点。 


getLayer(id)
返回地图一个单独的图层。
返回值: Layer
输入参数:
<String> id 必需的  被分配给图层的ID。 


getLevel()
获得当前地图的级别ID。仅仅ArcGISTiledMapService有效。
返回值: Number
参见:
setLevel   onLevelChanged   onLevelChanging   
hidePanArrows()
隐藏地图移动指针。 详见地图导航。
返回值: none
参见:
showPanArrows   isPanArrows   
hideZoomSlider()
隐藏地图缩放滚动条。 详见地图导航。
返回值: none
参见:
showZoomSlider   isZoomSlider   
panDown()
向南移动地图。
返回值: none
代码片段:


function south() {
  myMap.panDown();
}




panLeft()
向西移动地图。
返回值: none
代码片段:


function west() {
  myMap.panLeft();
}




panLowerLeft()
向西南移动地图。
返回值: none
代码片段:


function southWest() {
  myMap.panLowerLeft();
}




panLowerRight()
向东南移动地图。
返回值: none
代码片段:


function southEast() {
  myMap.panLowerRight();
}




panRight()
向东移动地图。
返回值: none
代码片段:


function east() {
  myMap.panRight();
}




panUp()
向北移动地图。
返回值: none
代码片段:


function north() {
  myMap.panUp();
}




panUpperLeft()
向西北移动地图。
返回值: none
代码片段:


function northWest() {
  myMap.panUpperLeft();
}




panUpperRight()
向东北移动地图。
返回值: none
代码片段:


function northEast() {
  myMap.panUpperRight();
}




removeAllLayers()
从地图上删除所有图层。 


当图层被删除是,已定义的地图范围,空间参考,切片模式不会修改。当下一个图层被加到地图,图层以相同的范围和空间参考显示。 (As of v1.3)
返回值: none
参见:
onLayersRemoved   onLayerRemove   
removeLayer(layer)
删除地图的指定图层。 (As of v1.3)
返回值: none
输入参数:
<Layer> layer 必需的  需要被删除的图层。 


当图层被删除是,已定义的地图范围,空间参考,切片模式不会修改。当下一个图层被加到地图,图层以相同的范围和空间参考显示。 


参见:
onLayerRemove   
reorderLayer(layer, index)
修改地图里图层顺序。注意第一个增加的图层总是基础图层,即使顺序被修改了。
返回值: none
输入参数:
<Layer> layer 必需的  参数指定图层将被移动。 (As of v1.4)版本1.4以后,使用该参数代替“layerId”参数。 


在v1.4以前,使用"layerID"代替"layer" 
类型: <String>
定义: 被移动的图层的ID。该ID被指定在Layer.id里面。 
<Number> index 必需的  引用放置图层的位置。最底部的图层的index是0。  


参见:
onLayerReorder   
reposition()
在页面上重新放置地图DIV。当地图已经被重新放置后需要使用这个方法。
返回值: none
resize()
调整地图DIV。当重新调整map DIV大小后这个方法要被使用。
返回值: none
参见:
onResize   
setExtent(extent, fit?)
设置地图范围。范围必需参照和地图一样的空间参考
返回值: none
输入参数:
<Extent> extent 必需的  为地图设置minx, miny, maxx和 maxy 。  
<Boolean> fit 可选项  当属性为true,对于包含切片地图服务图层,会保证你有一个在地图上完整地显示输入范围。 (As of v1.3)  


参见:
onExtentChange   onPan   onZoom   onZoomEnd   onZoomStart   extent   
setLevel(level)
设置地图到指定级别ID。基于当前地图中心点缩放到新的级别。仅仅对ArcGISTiledMapService图层有效。
返回值: none
输入参数:
<Number> level 必需的  The level ID. 


参见:
onLevelChanged   onLevelChanging   getLevel   LOD   
setMapCursor(cursor)
设置地图默认鼠标形状。除了拖拽地图进行移动或使用SHIFT+拖拽放大地图时外,鼠标位于地图上时该指针总被显示。如果没有设置,地图使用系统默认指针,通常使用箭头。 (As of v1.5)
返回值: none
输入参数:
<String> cursor 必需的  标准CSS cursor value。一些常用值包括 "default", "pointer", "crosshair", "text", "help", 和 "wait". 


代码片段:


Map.setMapCursor("wait");


showPanArrows()
显示地图移动指针。 详见地图导航。
返回值: none
参见:
isPanArrows   hidePanArrows   
showZoomSlider()
显示缩放滚动条。 详见地图导航。
返回值: none
参见:
isZoomSlider   hideZoomSlider   
toMap(screenPoint)
转换单个屏幕点坐标或屏幕点坐标数组为地图坐标。
返回值: Point
输入参数:
<Point> screenPoint 必需的  转换屏幕坐标到地图坐标。 


toScreen(mapPoint)
转换单个地图点坐标或地图点坐标的数组为屏幕坐标。
返回值: Point
输入参数:
<Point> mapPoint 必需的  转换地图坐标到屏幕坐标。 


Events Detail
onClick(event) 
当用户使用鼠标单击地图且鼠标在HTML页面的地图范围内时触发。
Arguments:
<Object> event  结果可以是任何JavaScript MouseEvent,或screenPoint或mapPoint的X,Y坐标。  


onDblClick(event) 
当用户在地图上双击鼠标且鼠标在html页面的地图范围内时触发该事件
Arguments:
<Object> event  结果可以是任何JavaScript MouseEvent,或screenPoint或mapPoint的X,Y坐标。  


onExtentChange(extent, delta, levelChange, lod) 
当地图范围已经修改触发该事件。
Arguments:
<Extent> extent  地图范围修改以后,获得地图范围。  
<Point> delta  变化在来自以前范围的x和y的值。这个点的x和y值是用屏幕单位表示。该点担当参照点,在缩放处理期间,这部分地图保持在地图区域内。  
<Boolean> levelChange  当使用ArcGIS Server切片地图服务时,当用户缩放地图到新的等级是参数值为"true",移动操作时参数值是"false"。  
<LOD> lod  当使用ArcGIS Server切片地图服务时,参数返回关于细节等级的特征。  


参见:
setExtent   extent   
onKeyDown(keyEvent) 
当键盘某键被按下时触发该事件
Arguments:
<Object> keyEvent  keyCode是Unicode数字表示的按键。见http://msdn2.microsoft.com/en-us/library/ms536938.aspx.  


onKeyUp(keyEvent) 
当键盘某键被释放时触发该事件。
Arguments:
<Object> keyEvent  keyCode是Unicode数字表示按键。  


onLayerAdd(layer) 
图层被添加到地图时触发该事件。
Arguments:
<Layer> layer  被加到地图里的图层。  


参见:
addLayer   
onLayerRemove(layer) 
图层已经被删除后触发事件 (As of v1.3)
Arguments:
<Layer> layer  删除的图层。  


参见:
removeLayer   removeAllLayers   
onLayerReorder(layer, index) 
当地图图顺序已经被改变时触发事件。
Arguments:
<Layer> layer  重新排序的图层。  
<Number> index  重新排序的图层的指针。  


参见:
reorderLayer   
onLayersRemoved() 
所有图层被删除后触发事件 (As of v1.3)
参见:
removeAllLayers   
onLayersReordered(layerIds) 
所有图层被重新排序是触发事件。 (As of v1.1)
Arguments:
<String[]> layerIds  缩放时间期间获得范围。 


onLoad(map) 
第一个或基础图层被成功添加到地图时触发事件。
Arguments:
<Map> map  指定加载地图。  


参见:
onUnload   loaded   Layer.onLoad 
onMouseDown(event) 
当鼠标按钮被按下且鼠标指针在HTML页面的地图范围里时触发事件。
Arguments:
<Object> event  结果可以是任何JavaScript MouseEvent,或screenPoint或mapPoint的X,Y坐标。  


onMouseDrag(event) 
鼠标被拖转直到鼠标按钮被释放时触发事件。
Arguments:
<Object> event  结果可以是任何JavaScript MouseEvent,或screenPoint或mapPoint的X,Y坐标。  


onMouseDragEnd(event) 
当鼠标按钮被释放并且用户停止拖拽鼠标时触发事件。
Arguments:
<Object> event  结果可以是任何JavaScript MouseEvent,或screenPoint或mapPoint的X,Y坐标。  


onMouseDragStart(event) 
当鼠标按钮被按下并用户开始拖拽鼠标时触发事件。
Arguments:
<Object> event  结果可以是任何JavaScript MouseEvent,或screenPoint或mapPoint的X,Y坐标。  


onMouseMove(event) 
鼠标指针在地图范围上移动时触发事件。通常该事件用于用户移动鼠标指针时显示当前地图x,y坐标。
Arguments:
<Object> event  结果可以是任何JavaScript MouseEvent,或screenPoint或mapPoint的X,Y坐标。  


onMouseOut(event) 
当鼠标移出HTML页的地图范围时触发事件。
Arguments:
<Object> event  结果可以是任何JavaScript MouseEvent,或screenPoint或mapPoint的X,Y坐标。  


onMouseOver(event) 
鼠标移入HTML页面的地图范围时触发事件。
Arguments:
<Object> event  结果可以是任何JavaScript MouseEvent,或screenPoint或mapPoint的X,Y坐标。  


onMouseUp(event) 
当鼠标按钮被释放并且鼠标指针在HTML页面的地图范围内时触发事件。
Arguments:
<Object> event  结果可以是任何JavaScript MouseEvent,或screenPoint或mapPoint的X,Y坐标。  


onMouseWheel(event) 
鼠标滚轮滚动时触发事件。
Arguments:
<Object> event  返回对象包含screenPoint, mapPoint,和 Graphic。  


onPan(extent, delta) 
地图移动过程中触发事件。
Arguments:
<Extent> extent  随着地图移动的地图当前范围。  
<Point> delta  随着地图移动改变的屏幕单位的x,y值。  


参见:
setExtent   extent   
onPanEnd(extent, endPoint) 
移动完成时触发事件。
Arguments:
<Extent> extent  随地图移动的地图当前范围。  
<Point> endPoint  当移动结束时屏幕单位的最终点。  


onPanStart(extent, startPoint) 
用户开始移动时触发事件。
Arguments:
<Extent> extent  地图移动的地图当前范围。  
<Point> startPoint  当使用鼠标时,鼠标单击的屏幕单位的开始点。如果键盘被使用,开始点是0,0。  


onReposition(x, y) 
地图DIV被重新定位时触发事件。
Arguments:
<Number> x  屏幕单位的X-坐标。  
<Number> y  屏幕单位的Y-坐标。  


onResize(extent, height, width) 
包含地图的DIV已经被调整大小时触发事件。
Arguments:
<Extent> extent  地图范围。  
<Number> height  地图的像数高。  
<Number> width  地图的像数宽。  


参见:
resize   
onUnload(map) 
刷新页面时触发事件。 
Arguments:
<Map> map  指定将卸载地图。  


参见:
loaded   onLoad   
onZoom(extent, zoomFactor, anchor) 
缩放过程中触发事件。
Arguments:
<Extent> extent  缩放事件期间获得地图范围。  
<Number> zoomFactor  表示地图从以前的范围放大或缩小的百分比的比例系数。值为2代表地图比以前的地图范围放大2倍,值为0.5表示地图比以前缩小2倍。  
<Point> anchor  鼠标点的位置。点x和y的值的单位是屏幕单位。该点担当参考点,在缩放处理期间,地图的这一部分保持在地图区域内。  


参见:
setExtent   extent   
onZoomEnd(extent, zoomFactor, anchor, level) 
缩放完成时触发事件。
Arguments:
<Extent> extent  缩放事件结束获得地图范围。  
<Number> zoomFactor  表示地图从以前的范围放大或缩小的百分比的比例系数。值为2代表地图比以前的地图范围放大2倍,值为0.5表示地图比以前缩小2倍。  
<Point> anchor  鼠标点的位置。点x和y的值的单位是屏幕单位。该点担当参考点,在缩放处理期间,地图的这一部分保持在地图区域内。  
<Number> level  地图缩放完成后ArcGISTiledMapServiceLayer的等级。  


参见:
setExtent   extent   
onZoomStart(extent, zoomFactor, anchor, level) 
用户开始缩放时触发事件。
Arguments:
<Extent> extent  缩放事件开始时获得地图范围。  
<Number> zoomFactor  表示地图从以前的范围放大或缩小的百分比的比例系数。值为2代表地图比以前的地图范围放大2倍,值为0.5表示地图比以前缩小2倍。  
<Point> anchor  鼠标点的位置。点x和y的值的单位是屏幕单位。该点担当参考点,在缩放处理期间,地图的这一部分保持在地图区域内。  
<Number> level  地图缩放开始前ArcGISTiledMapServiceLayer的等级。  


参见:
setExtent   extent   
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐