baidu map JSAPI

var obj = {};

obj.init = function(){
    if (window.navigator.geolocation) {
        window.navigator.geolocation.getCurrentPosition(obj.translatePoint);
    } else {
        alert("浏览器不支持html5来获取地理位置信息");
    }
};

obj.translatePoint = function(position) {
    var ggPoint = new BMap.Point(position.coords.longitude, position.coords.latitude);
    var pointArr = [];
    pointArr.push(ggPoint);
    var convertor = new BMap.Convertor();
    convertor.translate(pointArr, 1, 5, obj.translateCallback);
};

obj.translateCallback = function (data){
    if(data.status === 0) {
        obj.initMap(data.points[0]);
    }
};

obj.initMap = function(point) {
    var map = new BMap.Map("map");// 初始化地图
    map.centerAndZoom(point, 18);
    var marker = new BMap.Marker(point, {
        // 指定Marker的icon属性为Symbol
        icon: new BMap.Symbol(BMap_Symbol_SHAPE_POINT, {
            scale: 1.2,//图标缩放大小
            fillColor: "green",//填充颜色
            fillOpacity: 1.0//填充透明度
        })
    });
    map.addOverlay(marker);
    
    var opts = {
        width : 200,     // 信息窗口宽度
        height: 40,      // 信息窗口高度
        title : "我的位置", // 信息窗口标题
    };
    var geoc = new BMap.Geocoder();
    geoc.getLocation(point, function(rs){
        var addComp = rs.addressComponents;
        obj.province = addComp.province;
        obj.city = addComp.city;
        obj.district = addComp.district;
        obj.street = addComp.street;

        var local = new BMap.LocalSearch(obj.city, {
            renderOptions: {map: map, panel: "shop", selectFirstResult:false, autoViewport:true}
            //renderOptions: {map: map, selectFirstResult:false, autoViewport:true}
        });
        local.search("sasa");
        /*
        local.setSearchCompleteCallback(function(results){
            //alert(results.getNumPois());
            var tag = "123";
            for(var i = 0;i < results.getNumPois();i++){
                var poi = results.getPoi(i);
                alert(poi.title);
                tag += "<a class='pure pure-g shop-list' href='shop-details.html'>";
                tag +=         "<div class='pure pure-u-2-3'>";
                tag +=             "<p class='shop-name'>"+ poi.title +"</p>";
                tag +=             "<p class='shop-address'>铜锣湾富街72号</p>";
                tag +=             "<p class='shop-contact'>联系方式 "+poi.phoneNumber+"</p>";
                tag +=             "<p class='open-time'>营业时间 21 :&nbsp 00</p>";
                tag +=         "</div>";
                tag +=         "<div class='pure pure-u-1-3'>";
                tag +=             "<span class='dist'>855m</span>";
                tag +=         "</div>";
                tag +=     "</a>";
            
            }
            alert(tag);
            //$(".list-container").empty();
            //$(".list-container").append(tag);
        });*/
        
    });
    marker.addEventListener("click", function(e){        
        var infoWindow = new BMap.InfoWindow("地址:"+ obj.province + obj.city + obj.district + obj.street, opts);
        map.openInfoWindow(infoWindow,point);
    });
    
    
};

$(document).ready(function() {
    obj.init();
});

<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=kMyyQIAaYl23CPWylpxv4EBm"></script>

原文地址:https://www.cnblogs.com/linying/p/5337336.html