实现51Map地图接口(示例代码)


Posted in Javascript onNovember 22, 2013

51Map免费提供了地图接口以下是调用接口并且实现地理位置标注,存储,修改和回显功能。
51地图网址:http://api.51ditu.com/

在网页中引入

<script type="text/javascript" src="http://api.51ditu.com/js/maps.js"></script> 

在地图上标注:
  //地图标注
 $(document).ready(function(){
  var ico=new LTIcon("<c:url value='/images/manPosition.gif'/>",[24,24],[12,12]);
  var map=new LTMaps("mapdiv");//地图对象
  var controlB;  //标记控件
  map.centerAndZoom("tianjin",5);//天津
  map.handleMouseScroll();//鼠标滚轮
  var controlZoom = new LTStandMapControl();//缩放控件
  map.addControl( controlZoom );
  controlB = new LTMarkControl();//添加标注控件并把事件绑定到按钮
  controlB.setVisible(false);
  document.getElementById("addPosition").onclick=function (){controlB.btnClick()};
  map.addControl( controlB );
  LTEvent.addListener( controlB,"mouseup",function(){getPoi(controlB)} );
 })

 //添加标注时执行此函数
 function getPoi(controlB){
  var poi = controlB.getMarkControlPoint();
  $("#x").val(poi.getLongitude()); //x,y为input标签id通过它传入后台储存位置
  $("#y").val(poi.getLatitude());
 }

<div id="mapdiv" style="width: 300px; height: 200px; position:static;">
        <div align="center" style="margin: 12px;">
        <a href="http://api.51ditu.com/docs/mapsapi/help.html" target="_blank"
         style="color: #D01E14; font-weight: bolder; font-size: 12px;">看不到地图请点这里</a>
        </div>
       </div>

在读图上回显标注:
 //地图回显
 $(document).ready(function(){
  map("mapdiv");
 })
 //地图
 function map(div){
  var map=new LTMaps(div);//地图对象
  var marker=new LTMarker(new LTPoint($("#x").val(),$("#y").val()));//创建标注
   map.handleMouseScroll();//鼠标滚轮缩放
     map.centerAndZoom(new LTPoint($("#x").val(),$("#y").val()),5); //以坐标为中心显示地图
  map.addOverLay(marker) //添加标注到地图上
 }

修改地图上的标注:
 //地图回显
 $(document).ready(function(){
  map("mapdiv");
 })
 //地图
 function map(div){
  var map=new LTMaps(div);//地图对象
  var marker=new LTMarker(new LTPoint($("#x").val(),$("#y").val()));//创建标注
   map.handleMouseScroll();//鼠标滚轮缩放
     map.centerAndZoom(new LTPoint($("#x").val(),$("#y").val()),5); //以坐标为中心显示地图
  map.addOverLay(marker) //添加标注到地图上
  var controlZoom = new LTStandMapControl();
  map.addControl( controlZoom );
  //添加标注控件并把事件绑定到按钮
  var controlB = new LTMarkControl();//标记控件
  controlB.setVisible(false);
  document.getElementById("addPosition").onclick=function (){map.removeOverLay( marker,true);controlB.btnClick()};
  map.addControl( controlB );
  LTEvent.addListener( controlB,"mouseup",function(){getPoi(controlB)} );
 }
 //添加标注时执行此函数
 function getPoi(controlB){
  var poi = controlB.getMarkControlPoint();
  $("#x").val(poi.getLongitude());
  $("#y").val(poi.getLatitude());
 }

其他参数设置:
可以自定义标注图标样式
var ico=new LTIcon("<c:url value='/images/manPosition.gif'/>",[24,24],[12,12]);//创建图标对象
var marker=new LTMarker(new LTPoint($("#x").val(),$("#y").val()),ico);//创建标注
//当鼠标移动到标注上可以显示标注内容
LTEvent.addListener( marker , "mouseover" , function(){this.openInfoWinHtml('标注内容')});
Javascript 相关文章推荐
JavaScipt基本教程之JavaScript语言的基础
Jan 16 Javascript
jquery 插件 人性化的消息显示
Jan 21 Javascript
仿校内登陆框,精美,给那些很厉害但是没有设计天才的程序员
Nov 24 Javascript
将input file的选择的文件清空的两种解决方案
Oct 21 Javascript
在Iframe中获取父窗口中表单的值(示例代码)
Nov 22 Javascript
JavaScript实现的一个计算数字步数的算法分享
Dec 06 Javascript
深入剖析JavaScript:Object类型
May 10 Javascript
浅谈js数据类型判断与数组判断
Aug 29 Javascript
jQuery实现高级检索功能
May 28 jQuery
使用Node.js在深度学习中做图片预处理的方法
Sep 18 Javascript
js点击事件的执行过程实例分析【冒泡与捕获】
Apr 11 Javascript
详解JavaScript之Array.reduce源码解读
Nov 01 Javascript
怎么选择Javascript框架(Javascript Framework)
Nov 22 #Javascript
jquery根据name属性查找的小例子
Nov 21 #Javascript
js 走马灯简单实例
Nov 21 #Javascript
js获取客户端外网ip的简单实例
Nov 21 #Javascript
jquery实现简单易懂的图片展示小例子
Nov 21 #Javascript
jquery ajax对特殊字符进行转义防止js注入使用示例
Nov 21 #Javascript
利用jq让你的div居中的好方法分享
Nov 21 #Javascript
You might like
表单内同名元素的控制
2006/11/22 Javascript
JQuery CSS样式控制 学习笔记
2009/07/23 Javascript
基于jquery实现的鼠标滑过按钮改变背景图片
2011/07/15 Javascript
jQuery1.6 使用方法一
2011/11/23 Javascript
Jquery异步请求数据实例代码
2011/12/28 Javascript
javascript时间函数基础介绍
2013/03/28 Javascript
禁用Enter键表单自动提交实现代码
2014/05/22 Javascript
JS实现表格数据各种搜索功能的方法
2015/03/03 Javascript
jquery序列化方法实例分析
2015/06/10 Javascript
JavaScript事件 &quot;事件对象&quot;的注意要点
2016/01/14 Javascript
深入分析javascript中console命令
2016/08/14 Javascript
JavaScript中运算符规则和隐式类型转换示例详解
2017/09/06 Javascript
Express + Session 实现登录验证功能
2017/09/08 Javascript
vue select选择框数据变化监听方法
2018/08/24 Javascript
微信小程序之几种常见的弹框提示信息实现详解
2019/07/11 Javascript
[01:45]2014DOTA2 TI预选赛预选赛 大神专访第二弹!
2014/05/20 DOTA
[54:25]Ti4 循环赛第三日LGD vs MOUZ
2014/07/12 DOTA
[00:48]完美“圣”典2016风云人物:xiao8宣传片
2016/11/30 DOTA
[01:25:38]DOTA2-DPC中国联赛 正赛 VG vs LBZS BO3 第一场 1月19日
2021/03/11 DOTA
在Python的web框架中配置app的教程
2015/04/30 Python
python使用os.listdir和os.walk获得文件的路径的方法
2017/12/16 Python
wx.CheckBox创建复选框控件并响应鼠标点击事件
2018/04/25 Python
如何用Python实现简单的Markdown转换器
2018/07/16 Python
python random从集合中随机选择元素的方法
2019/01/23 Python
python五子棋游戏的设计与实现
2019/06/18 Python
HTML5 Canvas的性能提高技巧经验分享
2013/07/02 HTML / CSS
Solid & Striped官网:美国泳装品牌
2019/06/19 全球购物
自考毕业生自我鉴定
2013/11/04 职场文书
超市重阳节活动方案
2014/02/10 职场文书
党校毕业心得体会
2014/09/13 职场文书
有限责任公司股东合作协议书
2014/12/02 职场文书
违纪检讨书
2015/01/27 职场文书
独生子女证明范本
2015/06/19 职场文书
2015年挂职锻炼个人总结
2015/10/22 职场文书
解决golang 关于全局变量的坑
2021/05/06 Golang
Python IO文件管理的具体使用
2022/03/20 Python