在我嘗試進一步實施任何操作之前,我一直在Google Code Playground中對此進行測試。無法在Google JS API V3中查看地圖圈疊加結果
這只是在地圖上放置一個地圖標記,然後用以英里爲單位的半徑生成一個圓形覆蓋圖。但是,我仍然無法得到這個工作。
它似乎打破了圓圈疊加創建。我一直在尋找一個解決方案,但是我迄今爲止嘗試過的一切都要麼中斷(地圖不顯示),要麼不給我結果(沒有圈覆蓋)。
注:我遇到過類似的問題[問題:] Circle overlay in Google Map V3 API js。 我試過這個解決方案,但沒有奏效。
function initialize()
{
if (GBrowserIsCompatible())
{
var map = new GMap2(document.getElementById("map_canvas"));
map.setCenter(new GLatLng(30.6957, -88.1813), 13);
var latlng = new GLatLng(30.6957, -88.1813);
map.addOverlay(new GMarker(latlng));
var draw_circle = null;
function Draw_Circle(Miles)
{
Miles *= 1600;
if (draw_circle != null)
{
draw_circle.setMap(null);
}
draw_circle = new google.maps.Circle({
center: latlng,
radius: Miles,
strokeColor: "#FF0000",
strokeOpacity: 0.8,
strokeWeight: 2,
fillColor: "#FF0000",
fillOpacity: 0.35,
map: map
});
}
Draw_Circle(15);
}
}
再次感謝您提前。
編輯︰現在,我已被告知我是混合API版本。我想出了以下情況:
var latLng;
function initialize() {
var map;
var mapDiv = document.getElementById('map-canvas');
map = new google.maps.Map(mapDiv, {
center: new google.maps.LatLng(30.6957, -88.1813),
zoom: 13,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
latLng = new google.maps.LatLng(30.6957, -88.1813);
var marker = new google.maps.Marker({
position: latLng,
map: map
});
var draw_circle = null;
function Draw_Circle(Miles)
{
Miles *= 1600;
if (draw_circle != null)
{
draw_circle.setMap(null);
}
draw_circle = new google.maps.Circle({
center: latlng,
radius: Miles,
strokeColor: "#FF0000",
strokeOpacity: 0.8,
strokeWeight: 2,
fillColor: "#FF0000",
fillOpacity: 0.35,
map: map
});
}
Draw_Circle(15);
}
我幾乎沒有......現在,我沒有從任何調試器的錯誤信息,以表示有什麼問題我的圈覆蓋。
這看起來像是V2和V3的混合體。哪個API你參考? –
那我不知道。我應該只使用版本3.我得到的函數的例子應該是V3。 – Exitium
是否在[控制檯](http://stackoverflow.com/questions/66420/how-do-you-launch-the-javascript-debugger-in-google-chrome)中收到任何錯誤? (像GMap2 undefined) –