我是stackoveflow的新手,任何人都可以帮我看看如何使用google api v3绘制一个矩形,我在谷歌上看了一些例子我得到了下面的代码,
function initialize() {
var coachella = new google.maps.LatLng(33.6803003, -116.173894);
var rectangle;
var myOptions = {
zoom: 11,
center: coachella,
mapTypeId: google.maps.MapTypeId.TERRAIN
};
var map = new google.maps.Map(document.getElementById("map_canvas"),
myOptions);
rectangle = new google.maps.Rectangle();
google.maps.event.addListener(map, 'zoom_changed', function() {
// Get the current bounds, which reflect the bounds before the zoom.
var rectOptions = {
strokeColor: "#FF0000",
strokeOpacity: 0.8,
strokeWeight: 2,
fillColor: "#FF0000",
fillOpacity: 0.35,
map: map,
bounds: map.getBounds()
};
rectangle.setOptions(rectOptions);
});
}
但是,它适用于缩放事件(变焦通道),我想要简单的事件,请帮助我
答案 0 :(得分:2)
map.getBounds()在调用早期时(实例化地图后立即)可能不返回所需的边界。
您可以使用tilesloaded而不是
google.maps.event.addListenerOnce(map, 'tilesloaded', function() {
/*your code*/
});