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

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. PHP 安装

    2)下载安装PHP下载地址:https://windows.php.net/download 注意:下载完成,解压后就意味着安装成功。3)验证安装成功win+R 调出命令行终端,进入到PHP安装目录,输入php -v 得到以下信息...

  2. PHP面向对象-看父类调用子类方法

    PHP面向对象-看父类调用子类方法 大部分面向对象编程语言中,父类是不允许调用子类的方法的,但是PHP中可以 […]...

  3. windows搭建Web服务器(apache,php,mysql) 图文教程

    Windows下Apache+PHP+MySQL搭建web服务器的方法,windows Server Inst […]...

  4. PHP如何支持CURL字符串证书传输

    背景 最近在对接微信支付的时候,需要在退款处用到证书,由于我们是SAAS平台,要支持多方多渠道支付,如果把所有 […]...

  5. PHP的发展历程

    PHP的发展历程 了解一门语言,我们必须知道这门语言的发展史,现在我通过版本的变化以时间轴的形式来说明PHP的 […]...

  6. php 网页内容抓取

    抓取网页,先查看页面源代码。如果直接可以从html代码里获取我一般用phpquery 否则就另行正则匹配,或者 […]...

  7. PHP 连接 MySQL 的几种方法

    学习记录 留作参考祝君好运mysql_connect打开一个MySQL服务器的连接。本扩展自 PHP5.5.5起已废弃,并自PHP7.0.0开始被移除。mysqli_connectmysqli::__construct mysqli...

  8. RabbitMQ 初探

    RabbitMQ 初探 2019-03-27 14:19 by 掸尘, … 阅读, … […]...

随机推荐

  1. 第一章 引言:抓取Twitter数据

    很多类似的书一开始会介绍具体的社交网络api,弱化架构设计等等,但在这里我们先来看几个例子,这些例子能说明采集 […]...

  2. g2o-20160424 版本编译后 g2o_viewer 启动崩溃问题

    QT 版本问题 旧版本g2o/cmake_modules/FindQGLViewer.cmake中优先使用QT […]...

  3. java面试一日一题:如何判断一个对象是否为垃圾对象

    问题:请讲下在java中如何判断一个对象是否为垃圾 分析:该问题主要考察对java中的垃圾回收,用什么方式去识 […]...

  4. python算法与数据结构-快速排序(36)

      一、快速排序的介绍   快速排序(英语:Quicksort),又称划分交换排序(partition-exc […]...

  5. java关键字-abstract

    抽象:不具体,看不明白。 抽象类表象体现。 在不断抽取过程中,将共性内容中的方法声明抽取,但是方法不一样,没有 […]...

  6. Python的web服务器 – 狙击手+

    Python的web服务器 1.浏览器请求动态页面过程 2.WSGI Python Web Server Ga […]...

  7. C#-WinForm-布局-Anchor-锁定布局、Dock-填充布局、工具箱中的

    Anchor – 锁定布局,锁定控件对于其父控件或窗体的位置,保持与边框固定的距离还是居中等 Do […]...

  8. CheckBoxPreference组件

    CheckBoxPreference 选中为true 取消选中为false 它的值会以boolean的形式储存 […]...

展开目录

目录导航