百度地图添加标注,并获取标注的经纬度

1.功能介绍:地图刚加载完的时候显示一个默认的范围,本例子显示的是河南省,右键点击,删除地图上所有的标注并添加标注,并获取新标注的经纬度,也可以通过搜索地址,查询大概范围。(详情看代码中的注释)

 

<h2>Index</h2>
<!--百度地图显示的地方-->
<div style="width: 697px; height: 462px;" id="container">
</div>
<!--百度地图显示的地方-->
<script src="/Scripts/jquery-1.7.1.js"></script>
<script type="text/javascript" src="http://api.map.baidu.com/api?v=1.2"></script>

<script type="text/javascript">
    var map = new BMap.Map("container");//在指定的容器内创建地图实例
    map.setDefaultCursor("crosshair");//设置地图默认的鼠标指针样式
    map.enableScrollWheelZoom();//启用滚轮放大缩小,默认禁用。
    //根据经纬度选择默认范围
    //map.centerAndZoom(new BMap.Point(116.124878, 24.309178), 13);
    map.centerAndZoom("河南省", 8);//默认地图的显示范围
    map.addControl(new BMap.NavigationControl());

    map.addEventListener("rightclick", function (e) {//地图右键单击事件,左键为click
        map.clearOverlays();//添加标注前清空以前的所有标注
        document.getElementById("txtjingweidu").value = e.point.lng + ", " + e.point.lat;

        var marker = new BMap.Marker(new BMap.Point(e.point.lng, e.point.lat));        // 创建标注     
        map.addOverlay(marker);
    });

    function sear(result) {//根据地质搜索范围
        var local = new BMap.LocalSearch(map, {
            renderOptions: { map: map }
        });
        local.search(result);
    }
</script>
<input id="txtAddress" type="text" />
<input id="butSearch" type="button" onclick="sear(document.getElementById('txtAddress').value)" value="搜索"/>
经纬度:
<input id="txtjingweidu" type="text" />

 

posted @ 2013-10-13 18:37  学之乐  阅读(7945)  评论(1编辑  收藏  举报