SuperMap学习系列(二)——添加标注(鼠标点击弹出窗口)

2016/7/21 14:52:36 0人评论 689 次 分类:技术文章
学习笔记,方便以后查询。
[html] view plaincopy在CODE上查看代码片派生到我的代码片

  1. <p><!DOCTYPE html>  
  2. <html xmlns="<a target="_blank" href="http://www.w3.org/1999/xhtml">http://www.w3.org/1999/xhtml</a>">  
  3. <head>  
  4.     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  
  5.     <title></title>  
  6.     <script src="json_parse.js"></script>  
  7.     <script src="toJSON.js"></script>  
  8.     <script src="libs/SuperMap.Include.js"></script>  
  9.     <script type="text/javascript">             
  10.         var map, layer, vectorLayer, control, selectFeature;  
  11.         // 设置访问的GIS服务地址  
  12.         var url = "<a target="_blank" href="http://localhost:8090/iserver/services/map-ChinaTestWorkPlace/rest/maps/ChinaTest">http://localhost:8090/iserver/services/map-ChinaTestWorkPlace/rest/maps/ChinaTest</a>";  
  13.         function GetMap() {  
  14.             // 创建地图对象  
  15.             map = new SuperMap.Map("map");  
  16.             //control = new SuperMap.Control.MousePosition();     //该控件显示鼠标移动时,所在点的地理坐标。  
  17.             //map.addControl(control);  //添加控件  
  18.             // 创建图层对象  
  19.             layer = new SuperMap.Layer.TiledDynamicRESTLayer("World", url, { transparent: true, cacheEnabled: true }, { maxResolution: "auto" });  
  20.             layer.events.on({ "layerInitialized": addLayer });              
  21.         }  
  22.         // 加载图层  
  23.         function addLayer() {  
  24.             // 向Map添加图层  
  25.             map.addLayer(layer);  
  26.             map.setCenter(new SuperMap.LonLat(116.409749, 39.912344), 1);</p><p>            //添加大头针标记  
  27.             var markerlayers = new SuperMap.Layer.Markers("Markers");  
  28.             map.addLayer(markerlayers);  
  29.             var marker = new SuperMap.Marker(new SuperMap.LonLat(116.409749, 39.912344));  
  30.             markerlayers.addMarker(marker);</p><p>            //例如点击marker弹出popup  
  31.             marker.events.on({  
  32.                 "mouseover": openInfoWin,  
  33.                 "mouseout": closeInfoWin,  
  34.                 "click": clickHandler,  
  35.                 "scope": marker   //   还不清楚这行代码是什么意思!  如果有大神赐教,我不甚感激!  
  36.             });  
  37.         }  
  38.         var infowin = null;  
  39.         function openInfoWin() {             
  40.             closeInfoWin();  
  41.             var marker = this;              
  42.             var lonlat = marker.lonlat;  
  43.             var contentHTML = "<div style='font-size:.8em; opacity: 0.8; overflow-y:hidden;'>";  
  44.             contentHTML += "<div>Hello Word</div></div>";  
  45.             var popup = new SuperMap.Popup.FramedCloud("popwin",  
  46.                 new SuperMap.LonLat(lonlat.lon, lonlat.lat),  
  47.                 null,  
  48.                 contentHTML,  
  49.                 null,  
  50.                 true);  
  51.             infowin = popup;  
  52.             map.addPopup(popup);  
  53.         }  
  54.         function closeInfoWin() {            
  55.             if (infowin) {  
  56.                 try {  
  57.                     infowin.hide();  
  58.                     infowin.destroy();  
  59.                 }  
  60.                 catch (e) { }  
  61.             }  
  62.         }  
  63.         function clickHandler() {  
  64.             closeInfoWin();  
  65.             var marker = this;  
  66.             alert("Hello Word,我被点击了!");  
  67.         }  
  68.     </script>  
  69. </head>  
  70. <body onload="GetMap()">      
  71.     <div id="map" style="height: 640px; width: 720px; border: 1px solid red; margin-left: auto; margin-right: auto;"></div>  
  72. </body>  
  73. </html>  
  74. </p>  

效果图如下:

分享到:

相关资讯

  • 如何使用水经注万能地图下载器制作百度个性化地图-道路篇

    1. 概述水经注软件除了可以轻松下载无水印Google Earth卫星影像、有明确拍摄日期的历史影像、地方高清天地图、百度高德大字体打印地图,按1万/5千等国家标准图幅下载,对百度坐标与火星坐标进行纠偏;下载陆地及海洋高程、STRM高程、提取10米等高线等深线、CASS高程点之外,还…

    2019/12/23 16:31:58
  • 如何自定义分块导出大图

    当地图范围太大且级别太高时,导出拼接为单张大图后普通看图软件无法打开查看,即便是像ArcGIS或GlobalMapper等专业软件打开也非常困难。为了解决这一问题,本软提供了将大图自定义分块导出的功能。这里我们以成都市行政区划为例,说明如何自定分块导出大图。在视图中点击“下…

    2019/10/24 16:50:47
  • 如何在微图APP内查看三维地球

    说起三维地球,有了解的朋友都会第一时间想起 Google Earth,Google Earth 为用户提供了非常详细和绚丽的三维地球场景,但是Google Earth在国内能正常访问的是PC版,手机版无法查看。为了解决这一问题,水经注微图APP在上线不久之后便推出了三维地球的功能,方便用户查看三维地…

    2019/4/8 10:00:18
  • 青海省谷歌高清卫星地图下载(百度网盘离线包下载)

    一、概述  青海,简称青,省会西宁,位于中国西部,雄踞世界屋脊青藏高原的东北部,是中国青藏高原上的重要省份之一。青海省东西长约1200公里,南北宽800公里,面积为72.10万平方公里。境内山脉高耸,地形多样,河流纵横,湖泊棋布。昆仑山横贯中部,唐古拉山峙立于南,祁连…

    2018/8/23 16:18:41

共有0访客发表了评论 网友评论