2013-06-19 47 views
6

工作根據API REF,地圖對象應具有getProjection 方法:
http://code.google.com/apis/maps/documentation/v3/reference.html#Map爲什麼getProjection()不是在V3

當裝載在地圖在該示例 應提醒X,Y點,而是 將該值作爲未定義值引發。這是onload中調用的以下示例代碼。

function initialize() { 
var mapOptions = { 
zoom: 8, 
center: new google.maps.LatLng(-34.397, 150.644), 
mapTypeId: google.maps.MapTypeId.ROADMAP 
}; 
map = new google.maps.Map(document.getElementById('map-canvas'), 
    mapOptions); 
alert("projection:"+map.getProjection()); 
} 

回答

35

直到地圖完成初始化後纔可用。在訪問它之前,您必須等待「projection_changed」事件。

function initialize() { 
var mapOptions = { 
    zoom: 8, 
    center: new google.maps.LatLng(-34.397, 150.644), 
    mapTypeId: google.maps.MapTypeId.ROADMAP 
    }; 
map = new google.maps.Map(document.getElementById('map-canvas'), 
    mapOptions); 
google.maps.event.addListenerOnce(map,"projection_changed", function() { 
    alert("projection:"+map.getProjection()); 
}); 
}