JS百度地图PC端API基本使用(二)

1、事件交互和this

百度地图API的dom事件的回调函数也会有一个默认的事件对象e,通过e可以知道关于事件的一些信息

marker.addEventListener('click', function(e) {
        alert(e.point.lng + ", " + e.point.lat);
    })

 事件函数中的this也是指向发生该事件的dom元素

map.addEventListener("zoomend", function() {
        alert("地图缩放至:" + this.getZoom() + "级");
    });

 2、Geocoder:逆/地址解析

用于经纬度坐标以及真实地址的一个转换。

地址解析:首先先创造出一个地址解析器实例,然后调用他的getPoint方法,第一个参数为具体的一个地址,第二个为处理函数,第三个为省市名称,它可以自动将地图跳转要你输入的那个地址中,并且创造出一个点标注

   var myGeo = new BMap.Geocoder();
    myGeo.getPoint("南京市南京南站", function(point) {
            if (point) {
                map.centerAndZoom(point, 16);
                map.addOverlay(new BMap.Marker(point));
            }
        },
        "南京市");

逆地址解析就是通过他的经纬度坐标 返回一个真实的地址

    var myGeo = new BMap.Geocoder({
        extensions_town: true
    });
    myGeo.getLocation(new BMap.Point(115.364, 39.993), function(result) {
        if (result) {
            alert(result.address);
        }
    });