博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【高德地图API】如何制作自己的旅游地图?
阅读量:7259 次
发布时间:2019-06-29

本文共 2506 字,大约阅读时间需要 8 分钟。

hot3.png

“旅行的梦想并不遥远,只要一颗流浪四方的心。”——唐人立

最早认识唐人立的时候,他还是大二的学生。他独自完成了“南京20年规划地图”。几年前,他完成了自己的第一本著作,逃学去旅行《一个人走世界——大学4年200城的旅行》。而现在,他正执行着他的“辞职去旅行”计划。他好心的老板还多给他发了一个月的工资。从南京,到台湾,从曼谷到斯里兰卡……2个月来,唐人立走过太多地方。是他原创的图片和文字,让我渐渐对自助游产生了兴趣,并决定记录下旅游的每一刻。

于是,我开始着手制作了这个旅行地图。可能它还不够完善,但的确它能给我们带来太多的正能量。希望有越来越多的人,能够用这种方式,去记录自己的旅途。THX。

 

 

代码其实很简单,简单的地图展示,简单的覆盖物,简单的信息窗口。

你要做的,其实只是申请一个key:

然后将下面的代码复制到你的网站上,并使用你自己的key。

 

第一步、地图展示

中心点坐标可以通过坐标拾取工具来找:

地图级别在国内建议12-18,国外建议在4-6.

var mapObj;  //初始化地图对象,加载地图  function mapInit(){      mapObj = new AMap.Map("iCenter",{center:new AMap.LngLat(121.498586,31.239637),          level:17});       addBuildings();  }

 

第二步、添加覆盖物

覆盖物,就是marker,这里用的默认的覆盖物。蓝色的,挺好看。

//实例化点标记  function addMarker(){      marker=new AMap.Marker({                        icon:"http://webapi.amap.com/images/marker_sprite.png",      position:new AMap.LngLat(116.405467,39.907761)      });      marker.setMap(mapObj);  //在地图上添加点  }

 

第三步、添加信息窗口

信息窗口用了自定义信息窗口,因为觉得兰蓝色的比较好看。

自定义信息窗口,分为3个部分,头,中间,尾巴。

关闭按钮也可以使用自定义图片。

//构建自定义信息窗体   function createInfoWindow(title,content){      var info = document.createElement("div");      info.className = "info";      // 定义顶部标题      var top = document.createElement("div");      top.className = "info-top";        var titleD = document.createElement("div");        titleD.innerHTML = title;        var closeX = document.createElement("img");        closeX.src = "http://webapi.amap.com/images/close2.gif";        closeX.onclick = closeInfoWindow;              top.appendChild(titleD);      top.appendChild(closeX);      info.appendChild(top);      // 定义中部内容      var middle = document.createElement("div");      middle.className = "info-middle";      middle.innerHTML = content;      info.appendChild(middle);            // 定义底部内容      var bottom = document.createElement("div");      bottom.className = "info-bottom";      var sharp = document.createElement("img");      sharp.src = "http://webapi.amap.com/images/sharp.png";      bottom.appendChild(sharp);        info.appendChild(bottom);      return info;  }

 

 

第四步、结果面板

结果面板只要是为了鼠标放在上面时,可以打开相应的信息窗口。

HTML结构:

信息窗口展开代码:

function myOpen(){    infoWindow.open(mapObj,marker.getPosition());}function myOpen2(){    infoWindow2.open(mapObj,marker2.getPosition());}

--------------------------------------------------------------------------

全部源代码:

逃学去旅行

逃学去旅行2

 

页面地址:

 

 效果图:

转载于:https://my.oschina.net/u/1776356/blog/280998

你可能感兴趣的文章
二十八、layui的日历组件使用
查看>>
『Lucas定理以及拓展Lucas』
查看>>
Lync Server 2013与OWA的集成
查看>>
android应用开发全程实录出版
查看>>
个人学习Linux决心书
查看>>
VTP
查看>>
我的友情链接
查看>>
get请求乱码问题,用encodeURI和decodeURI
查看>>
MapReduce工作原理
查看>>
视频营销、B2B营销、EDM营销之营销方式大PK
查看>>
MySQL服务器学习笔记!(二) ——数据库各项操作
查看>>
nginx+fastcgi+c/c++搭建高性能Web框架
查看>>
eclipse中maven项目红叉解决方案
查看>>
RHEL5中配置无线
查看>>
Linxu用户登录监测
查看>>
7. Reverse Integer
查看>>
我的友情链接
查看>>
JVM的垃圾回收与内存分配
查看>>
【涛声依旧】华为的“大服务”
查看>>
我的友情链接
查看>>