实现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 相关文章推荐
调试Javascript代码(浏览器F12及VS中debugger关键字)
Jan 25 Javascript
jquery和ajax的关系详细介绍
Nov 29 Javascript
js使用ajax读博客rss示例
May 06 Javascript
IE6-IE9中tbody的innerHTML不能赋值的解决方法
Jun 05 Javascript
用box固定长宽实现图片自动轮播js代码
Jun 09 Javascript
JQuery实现当鼠标停留在某区域3秒后自动执行
Sep 09 Javascript
jQuery中append()方法用法实例
Jan 08 Javascript
Node.js实用代码段之获取Buffer对象字节长度
Mar 17 Javascript
微信小程序 数据访问实例详解
Oct 08 Javascript
Angular 4根据组件名称动态创建出组件的方法教程
Nov 01 Javascript
js阻止默认右键的下拉菜单方法
Jan 02 Javascript
小程序实现左滑删除的效果的实例代码
Oct 19 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
全国FM电台频率大全 - 30 宁夏回族自治区
2020/03/11 无线电
php cout&amp;lt;&amp;lt;的一点看法
2010/01/24 PHP
codeigniter使用技巧批量插入数据实例方法分享
2013/12/31 PHP
zf框架db类的分页示例分享
2014/03/14 PHP
laravel自定义分页效果
2017/07/23 PHP
PHP cURL获取微信公众号access_token的实例
2018/04/28 PHP
PHP实现文字写入图片功能
2019/02/18 PHP
PHP的介绍以及优势详细分析
2019/09/05 PHP
jquery索引在使用中的一些困惑
2013/10/24 Javascript
js写的方法实现上传图片之后查看大图
2014/03/05 Javascript
js 获取input点选按钮的值的方法
2014/04/14 Javascript
jQuery中:hidden选择器用法实例
2014/12/30 Javascript
深入理解JavaScript中的对象
2015/06/04 Javascript
text-align:justify实现文本两端对齐 兼容IE
2015/08/19 Javascript
微信企业号开发之微信考勤Cookies的使用
2015/09/11 Javascript
JS组件Bootstrap实现弹出框和提示框效果代码
2015/12/08 Javascript
js定时器实例分享
2016/12/20 Javascript
canvas的神奇用法
2017/02/03 Javascript
微信小程序 监听手势滑动切换页面实例详解
2017/06/15 Javascript
详解Node.js模板引擎Jade入门
2018/01/19 Javascript
H5+C3+JS实现双人对战五子棋游戏(UI篇)
2020/05/28 Javascript
Vue.js组件高级特性实例详解
2018/12/24 Javascript
Python写的英文字符大小写转换代码示例
2015/03/06 Python
Tensorflow实现卷积神经网络的详细代码
2018/05/24 Python
解决pandas中读取中文名称的csv文件报错的问题
2018/07/04 Python
使用Pyhton集合set()实现成果查漏的例子
2019/11/24 Python
找Python安装目录,设置环境路径以及在命令行运行python脚本实例
2020/03/09 Python
python批量生成条形码的示例
2020/10/10 Python
html5 sessionStorage会话存储_动力节点Java学院整理
2017/07/06 HTML / CSS
阿迪达斯德国官方网站:adidas德国
2017/07/12 全球购物
经济管理专业毕业生自荐信范文
2014/01/02 职场文书
旷课检讨书1000字
2014/02/14 职场文书
5.12护士节演讲稿
2014/04/30 职场文书
初中学校军训方案
2014/05/09 职场文书
小学生暑假安全公约
2015/07/14 职场文书
Python实现Hash算法
2022/03/18 Python