zoukankan      html  css  js  c++  java
  • 百度地图拖动选点并实时POI检索附近兴趣点

    地图拖拽选点使用了百度地图的拖拽以及地址解析

                data{
                      return{![](https://img2020.cnblogs.com/blog/1546341/202011/1546341-20201110180733479-954293839.jpg)
    
    
                            goinit:''
                      }
                }
    
                var lng = sessionStorage.getItem('lng')
                var lat = sessionStorage.getItem('lat')
                //启用滚轮缩放
                var map= new BMap.Map("container");
                var mPoint= new BMap.Point(lng, lat);
                var that = this
                var myGeo = new BMap.Geocoder();        //创建地址解析实例
                var geolocation = new BMap.Geolocation();
                map.centerAndZoom(mPoint,18);  //初始化时,即可设置中心点和地图缩放级别。
                
                map.enableScrollWheelZoom(true);      //开启滚轮缩放
                map.enableDragging()                  //开启惯性拖拽
                displayPOI(mPoint)
                // 检索条件【检索附近全部
                var mOption = {
                    poiRadius : 500,            //半径为1000米内的POI,默认100米
                    numPois : 12                //列举出50个POI,默认10个
                }
                // 初始化
                this.goinit()
                // 返回初始位置操作
                this.goinit = function () {
                    map.panTo(mPoint);
                    displayPOI(mPoint)
                }
                function displayPOI(point){
                    myGeo.getLocation(point,function mCallback(rs){
                            var allPois = rs.surroundingPois;             //获取全部POI
                            console.log('displayPOI>>=',rs)               //获取结果
                        },mOption);
                }
                
                geolocation.getCurrentPosition(function(r){
                    if(this.getStatus() === BMAP_STATUS_SUCCESS){
    
                        //将地图中心移动到可视区中点
                        map.panTo(r.point);
                        map.addEventListener('dragend',function(){            //拖拽结束触发
                            // 创建marker点,可以选择添加或者删除【小红点标记】
                            var mk = new BMap.Marker(map.getCenter());
                            // map.addOverlay(mk);
                            map.removeOverlay(mk);
                            var pos = map.getCenter();            //map.getCenter();获取当前地图中心点坐标
                            console.log(pos)
                            displayPOI(pos)
                        });
                    }else {
                        alert('failed'+this.getStatus());
                    }
                });
    ```![](https://img2020.cnblogs.com/blog/1546341/202011/1546341-20201110180746701-147767124.jpg)
  • 相关阅读:
    做一个:网页请求数据库数据 流程
    开始一个Django项目的简单方法
    Django模板系统
    Python Django 中的STATIC_URL 设置和使用解析
    Django框架(一)-Django初识
    bootstrap
    jQuery
    js(jquery)鼠标移入移出事件时,出现闪烁、隐藏显示隐藏显示不停切换的情况
    PHPCMS快速建站系列之网站迁移(本地到服务器,服务器迁移,更换域名等)
    PHPCMS快速建站系列之在线留言
  • 原文地址:https://www.cnblogs.com/ss-jojo/p/13602720.html
Copyright © 2011-2022 走看看