我正在使用 Google Maps 在隐藏的 div 下显示,该 div 在单击选项卡时会切换,我有两个问题,也许它们是相关的:
- 地图没有完全显示
- 标记不在地图的中心,它位于地图的左上角
我正在粘贴代码,请指导我哪里错了或有任何建议。
var map = new GMap2(document.getElementById(mapid));
if( maptype == 'G_NORMAL_MAP' )
{
map.setCenter(new GLatLng(startLatitude,startLongitude ), 6);
map.addControl(new GLargeMapControl());
}
else if( maptype == 'G_SATELLITE_MAP' )
{
map.setCenter(new GLatLng(startLatitude,startLongitude ), 18);
map.addControl(new GLargeMapControl());
map.setMapType(G_SATELLITE_MAP);
map.setUIToDefault();
map.enableRotation();
}
else if( maptype == 'G_AERIAL_MAP' )
{
map.setCenter(new GLatLng(startLatitude,startLongitude ), 18);
map.addControl(new GLargeMapControl());
map.setMapType(G_AERIAL_MAP);
map.setUIToDefault();
map.enableRotation();
}
else if( maptype == 'G_AERIAL_HYBRID_MAP' )
{
map.setCenter(new GLatLng(startLatitude,startLongitude ), 18);
map.addControl(new GLargeMapControl());
map.setMapType(G_AERIAL_HYBRID_MAP);
map.setUIToDefault();
map.enableRotation();
}
// Add 10 markers to the map at random locations
var bounds = map.getBounds();
var southWest = bounds.getSouthWest();
var northEast = bounds.getNorthEast();
var lngSpan = northEast.lng() - southWest.lng();
var latSpan = northEast.lat() - southWest.lat();
var point = new GLatLng(startLatitude, startLongitude);
map.setCenter(bounds.getCenter());
map.addOverlay(new GMarker(point));