百度地图API


<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="查询" οnclick="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>

 

https://blog.csdn.net/time_song/article/details/41253687

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值