现在的位置: 首页 > 综合 > 正文

百度地图API开发笔记一(基础篇)

2012年01月16日 ⁄ 综合 ⁄ 共 2719字 ⁄ 字号 评论关闭

什么是百度地图API?

百度地图API是一套由JavaScript语言编写的应用程序接口,它能够帮助您在网站中构建功能丰富、交互性强的地图应用。百度地图API包含了构建地图基本功能的各种接口,提供了诸如本地搜索、路线规划等数据服务。

测试js API代码(并附详细注释)

HTML头部记得引入百度地区API版本

http://api.map.baidu.com/api?v=1.3

<div id="results"></div>
//用于存放搜索结果
<div id="container"></div>
//用于显示地图主体内容(必选)<script type="text/javascript">// <![CDATA[
var map = new BMap.Map("container"); // 创建地图实例 (必选)
var point = new BMap.Point(117.242856, 31.822101); // 创建点坐标 (必选)
map.addControl(new BMap.NavigationControl());//开启控制 控件
map.addControl(new BMap.ScaleControl());
map.addControl(new BMap.CopyrightControl()); //左下角显示版权信息
map.addControl(new BMap.MapTypeControl());//显示地图类型 (卫星,地图三维)
map.enableScrollWheelZoom();	//开启鼠标滚轮
map.centerAndZoom(point, 15); 	// 初始化地图,设置中心点坐标和地图级别 (地图缩放级别)(必选)

var marker = new BMap.Marker(point);  // 创建标注  
map.addOverlay(marker);  // 将标注添加到地图中  
marker.addEventListener("click", function(data){  //监听点击事件
 alert('你点击的了坐标');  
});  
marker.enableDragging();  //开启拖拽
marker.addEventListener("dragend", function(e){  //监听拖拽放开后事件
 alert("当前位置:" + e.point.lng + ", " + e.point.lat);  //弹出回传 经纬度
});

var opts = {  
 width : 250,  // 信息窗口宽度  
 height: 80,   // 信息窗口高度  
 title : "目标地区"  // 信息窗口标题  
}  
var infoWindow = new BMap.InfoWindow("<img src='http://hfhouse.com/images/2012/logo.gif' />", opts);  // 创建信息窗口对象  
map.openInfoWindow(infoWindow, map.getCenter()); // 打开信息窗口  

/* 绘制线条
 * 起始坐标画线	
 * 总共花了三条线
 */

 //第一条
var polyline = new BMap.Polyline([  
   new BMap.Point(119.28898, 26.022776),  
   new BMap.Point(123.490391, 25.754419)  
 ],  
 {strokeColor:"blue", strokeWeight:6, strokeOpacity:0.5}  
);  
map.addOverlay(polyline);  

//第二条
var polyline = new BMap.Polyline([  
   new BMap.Point(121.884221, 29.634663),  
   new BMap.Point(123.490391, 25.754419)  
 ],  
 {strokeColor:"blue", strokeWeight:6, strokeOpacity:0.5}  
);  
map.addOverlay(polyline);  
//第三条
var polyline = new BMap.Polyline([  
   new BMap.Point(117.232076, 31.821718),  
   new BMap.Point(123.490391, 25.754419)  
 ],  
 {strokeColor:"blue", strokeWeight:6, strokeOpacity:0.5}  
);  
map.addOverlay(polyline); 

/*监听鼠标点击事件*/
map.addEventListener("click", function(e){  
  var center = map.getCenter(); 
	//alert("地图中心点变更为:" + center.lng + ", " + center.lat);  	 //点击时 当前地区的中心点坐标
	//alert("地图缩放至:" + this.getZoom() + "级"); 	//点击时 弹出当前地图地图缩放级别
	alert(e.point.lng + ", " + e.point.lat); 	//点击位置的坐标
	//map.removeEventListener("click", showInfo);  	//移除监听事件
});  

/*监听鼠标缩放*/
map.addEventListener("zoomend", function(){  
	//alert("地图缩放至:" + this.getZoom() + "级");  //鼠标滚动缩放时弹出当前缩放等级
});  

/*本地搜索 方式1  采用已实例的地区进行搜索*/

var local = new BMap.LocalSearch(map, {  
 renderOptions:{map: map}  
});  
local.search("火车站");

/*
var local = new BMap.LocalSearch(map, {  
 renderOptions: {map: map, panel: "results"}  
});  
local.search("华邦世贸"); 
*/ 

/*本地搜索 方式2  直接采用文字搜索
	var map = new BMap.Map("container");  
	map.centerAndZoom(new BMap.Point(117.242856, 31.822101), 15);  
	var local = new BMap.LocalSearch("合肥市", {  
	 renderOptions: {  
	   map: map,  
	   autoViewport: true,  
	   selectFirstResult: false  
	 },  
	  pageCapacity: 8  
	});  
	local.search("火车站");  

*/

//map.removeOverlay(marker); 	//释放掉某一标注,不用时释放掉,节省内存
// ]]></script>

  

 
【上篇】
【下篇】

抱歉!评论已关闭.