最近做個項目要用百度地圖,每一個點都要在地圖上顯示出來,而且都在可是範圍之內,
因爲之前已經將所有的點都標註到地圖上了,但是地圖大小不變化。
下面是代碼:
function resizeMap() {
// 設置所有點都在地圖顯示
var mkrs = map.getOverlays();
var points = [];
for (var i=1; i < mkrs.length;i++) {
points.push(mkrs[i].getPosition());
}
map.setViewport(points);
}
map爲js的常量。
var map;
// 初始化百度地圖,以及在地圖上顯示的位置
function initMap() {
map = new BMap.Map("container");//在指定的容器內創建地圖實例
map.setDefaultCursor("point");//設置地圖默認的鼠標指針樣式 。
map.addControl(new BMap.NavigationControl()); // 添加平移縮放控件
map.addControl(new BMap.ScaleControl()); // 添加比例尺控件
map.addControl(new BMap.OverviewMapControl()); //添加縮略地圖控件
map.enableScrollWheelZoom(); //啓用滾輪放大縮小
map.addControl(new BMap.MapTypeControl()); //添加地圖類型控件
map.clearOverlays();
}