百度地图API入门

来源:互联网 发布:ubuntu怎样新建文件夹 编辑:程序博客网 时间:2024/06/07 18:09
<html><head><title>根据地址查询经纬度</title><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><!-- 引用百度地图API -->    <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=700b132845ef5b0b135066dfa0222a37&services=&t=20140304174137"></script></head><body style="background:#FFFFFF"><!-- 添加两个文本框和一个查询按钮,第一个文本框用来输入要查询的地址,第二个文本框用来显示查询所得的经纬度。--><div style="width:100%; margin:auto;">               查询地址:<input id="text_" type="text" value="" style="margin-right:0px;"/> <input type="button" value="查询" onclick="searchByStationName();"/>               查询结果(经纬度):<input id="result_" type="text" /><!-- 创建地图容器 --><div id="container"style="position:absolute;top:40px;width:100%;height:95%;border:1px solid gray;overflow:hidden;"></div></div></body><script type="text/javascript">//添加地图的一些基本设置var map = new BMap.Map("container");//创建一个地图container容器map.centerAndZoom("上海", 12);//设置地图显示的中心点、显示的放大倍数map.enableScrollWheelZoom();//启用地图滚轮放大缩小功能(默认禁用)map.enableContinuousZoom();//启用地图惯性拖拽功能(默认禁用)map.addControl(new BMap.NavigationControl());//添加默认缩放平移控件map.addControl(new BMap.OverviewMapControl());//添加默认缩略地图控件//右下角,打开。BMAP_ANCHOR_BOTTOM_RIGHT为控件显示的位置,表示控件位于地图的右下角,可以按照自己的喜好添加参数值map.addControl(new BMap.OverviewMapControl({ isOpen: true, anchor: BMAP_ANCHOR_BOTTOM_RIGHT}));var localSearch = new BMap.LocalSearch(map);//构建一个查询localSearch.enableAutoViewport();//允许自动调节窗体大小//获取地址的具体经纬度function searchByStationName() {map.clearOverlays();//清空原来的标注var keyword = document.getElementById("text_").value;//调用setSearchCompleteCallback的回调函数写入到html中localSearch.setSearchCompleteCallback(function (searchResult) {//poi检索,(Point Of Interest,兴趣点),周边检索、区域检索、城市内检索var poi = searchResult.getPoi(0);//获取经度(lng)和纬度(lat),将结果显示在文本框中document.getElementById("result_").value = poi.point.lng + "," + poi.point.lat;//初始化地图,并设置地图显示的中心点、显示的放大倍数map.centerAndZoom(poi.point, 13);//创建标注,标注为要查询的地址对应的经纬度var marker = new BMap.Marker(new BMap.Point(poi.point.lng, poi.point.lat));//将标注添加到地图中,Overlay覆盖物的抽象基类,所有覆盖物均继承此类的方法map.addOverlay(marker);var content = document.getElementById("text_").value + "<br/><br/>经度:" + poi.point.lng + "<br/>纬度:" + poi.point.lat;var infoWindow = new BMap.InfoWindow("<p style='font-size:14px'>" + content + "</p>");marker.addEventListener("click", function(){ this.openInfoWindow(infoWindow); });marker.setAnimation(BMAP_ANIMATION_BOUNCE);//跳动的动画});localSearch.search(keyword);}</script></html>


效果图:

转(稍有改动)

原创粉丝点击