百度地图的定位以及拖拽(显示坐标位置)

ricklz 2018-06-11 原文

百度地图的定位以及拖拽(显示坐标位置)

截图示例

<!doctype html>

<html lang=”en”>
 <head>
  <meta charset=”UTF-8″>
  <meta name=”Generator” content=”EditPlus®”>
  <meta name=”Author” content=””>
  <meta name=”Keywords” content=””>
  <meta name=”Description” content=””>
  <title></title>

    <style type=”text/css”>
        html{height:100%}    
        body{height:100%;margin:0px;padding:0px}    
        #map_canvas{
            margin:0 auto;
            border:2px solid #f9f7f6;
            width:80%;
            height:80%;
            }    

        
    </style>
  
 </head>
 <body>
    

    <div id=”map_canvas”></div>

    <script src=”jquery-2.1.4.min.js”></script>
    <script src=”http://api.map.baidu.com/api?v=2.0&ak=74af171e2b27ee021ed33e549a9d3fb9″></script>
    <script type=”text/javascript” src=”http://api.map.baidu.com/library/TextIconOverlay/1.2/src/TextIconOverlay_min.js”></script>
    <script type=”text/javascript” src=”http://api.map.baidu.com/library/MarkerClusterer/1.2/src/MarkerClusterer_min.js”></script>

    <script type=”text/javascript”>
        var map = new BMap.Map(“map_canvas”);          // 创建地图实例
        var initLat = 39.916527;
        var initLng = 116.397128;
        var point = new BMap.Point(initLng, initLat);  // 创建点坐标  
        map.centerAndZoom(point, 13);                 // 初始化地图,设置中心点坐标和地图级别  

   
        //var marker = new BMap.Marker(point);        // 创建标注    
        //map.addOverlay(marker);                     // 将标注添加到地图中

        map.enableScrollWheelZoom();                            // 启用滚轮放大缩小 
        map.addControl(new BMap.NavigationControl());           // 启用放大缩小 尺
        
        //获取当前位置
        var geolocation = new BMap.Geolocation();  
        geolocation.getCurrentPosition(function(r){  
            if(this.getStatus() == BMAP_STATUS_SUCCESS){  
                mk = new BMap.Marker(r.point);  
                mk.addEventListener(“dragend”, showInfo);
                mk.enableDragging();    //可拖拽
                
                getAddress(r.point);

                map.addOverlay(mk);//把点添加到地图上  
                map.panTo(r.point); 

            }else {  
                alert(‘failed’+this.getStatus());  
            }  
        });
        
        //绑定Marker的拖拽事件
        function showInfo(e){
            var gc = new BMap.Geocoder();
            gc.getLocation(e.point, function(rs){
                var addComp = rs.addressComponents;
                var address = addComp.province +  addComp.city + addComp.district + addComp.street + addComp.streetNumber;//获取地址
                alert(address); 
                //画图 —》显示地址信息
                var label = new BMap.Label(address,{offset:new BMap.Size(20,-10)});
                map.removeOverlay(mk.getLabel());//删除之前的label 

                mk.setLabel(label);
                //alert(e.point.lng + “, ” + e.point.lat + “, “+address);
             });
        }
        
        //获取地址信息,设置地址label
        function getAddress(point){
            var gc = new BMap.Geocoder();
            
            gc.getLocation(point, function(rs){
                var addComp = rs.addressComponents;
                var address =  addComp.province +  addComp.city + addComp.district + addComp.street + addComp.streetNumber;//获取地址
                   alert(address); 
                //画图 —》显示地址信息
                var label = new BMap.Label(address,{offset:new BMap.Size(20,-10)});
                map.removeOverlay(mk.getLabel());//删除之前的label 

                mk.setLabel(label);
                
             });
             
        }
        
        
        
    </script>

 </body>
</html>

发表于 2018-06-11 14:54 乔克叔叔lz 阅读() 评论() 编辑 收藏

 

版权声明:本文为ricklz原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/ricklz/p/9167049.html

百度地图的定位以及拖拽(显示坐标位置)的更多相关文章

  1. dokuwiki编辑器修改-color插件-添加按钮

    需求 dokuwiki的编辑工具栏是以 MediaWiki 的为基础发展来的。 在它的编辑器color插件的颜 […]...

  2. PHP substr()函数参数解释 通俗易懂

    substr(string,start,length) 参数:1,string 即你要截取的字符串2,star […]...

  3. PHP代码审计之PHP危险函数总结

    代码执行相关函数eval()#传入的参数必须为PHP代码,需要以分号结尾。#执行多行代码eval(phpinfo());eval($_POST[‘cmd’]);assert()#执行单行代码与eval类似,字符串被 asse...

  4. PHP爬取itunes页面信息

    PHP爬取itunes页面信息 实验目的:通过PHP curl爬取某个package 的itunes页面数据, […]...

  5. PHP7变量的内部实现

    PHP7变量的内部实现 受篇幅限制,这篇文章将分为两个部分。本部分会讲解PHP5和PHP7在zval结构体的差 […]...

  6. php 7.1.32 +Apache 2.4 配置 (x64)

    最近phpstudy 后门事件一出,吓得小编瑟瑟发抖,决心自己配置环境不再用集成环境。 一、apache 配置 […]...

  7. 微信对账单处理-PHP

    最近要做支付对账,即检查第三方支付与数据库中账单是否一一对应,涉及到微信对账单的处理,成功时,微信账单接口返回 […]...

  8. PHP 用QueryList抓取网页内容

    之前抓取网页数据都是用Java Jsoup,前几天听说用PHP抓更方便,今天就简单研究了一下,主要是用Quer […]...

随机推荐

  1. 数据库(分库分表)中间件对比

    分区:对业务透明,分区只不过把存放数据的文件分成了许多小块,例如mysql中的一张表对应三个文件.MYD,MY […]...

  2. ubuntu 下openoffice安装

    ubuntu 中openoffice无法启动进程 openoffice官网建议的安装步骤:http://www […]...

  3. 文档驱动开发模式在 AIMS 中的应用与实践

    摘要:程序员常会说:我最讨厌别人写的代码没有文档,我也最讨厌自己需要写文档。 有一个很老的梗: 我最讨厌别人写 […]...

  4. 以太坊挖矿源码:ethash算法

    本文具体分析以太坊的共识算法之一:实现了POW的以太坊共识引擎ethash。 关键字:ethash,共识算法, […]...

  5. UML图

    UML图 – 时序图 时序图(序列图,顺序图)(Sequence Diagram)显示对象之间的关 […]...

  6. c语言指针讲解第一节初识指针

      众所周知,c语言的指针是拉开程序员的一个分水岭。首先今天我们要明确几个问题,什么是指针,什么是指针变量,* […]...

  7. 停止Java线程,小心interrupt()方法 – 清晨雨露

    停止Java线程,小心interrupt()方法 程序是很简易的。然而,在编程人员面前,多线程呈现出了一组新的 […]...

  8. 梯度下降

      高数里面有提到梯度的概念,重温一下。   梯度:设函数z=f(x,y)在平面区域D内有一街连续偏导数,则函 […]...

展开目录

目录导航