我有一个使用 API V3 的嵌入式谷歌地图,但我无法将其默认缩放为 1 以外的任何值。
我脑子里的JS是:
var map1;
var src1 = 'https://latitude.google.com/latitude/apps/badge/api?user=8963899225283336226&type=kml';
function initialize1() {
map1 = new google.maps.Map(document.getElementById('map-canvas'), {
zoom: 7,
mapTypeId: google.maps.MapTypeId.TERRAIN
});
loadKmlLayer1(src1, map1);
}
google.maps.event.addDomListener(window, 'load', initialize1);
function loadKmlLayer1(src1, map1) {
var kmlLayer1 = new google.maps.KmlLayer(src1, {
suppressInfoWindows: false,
clickable: true,
preserveViewport: false,
map: map1
});
}
HTML 只是地图画布 div,仅此而已。看看这里的一些线程,它看起来与检测视口和重置边界有关。
我发现一个线程建议添加如下内容:
google.maps.event.addListener(kmlLayer1, 'defaultviewport_changed', function() {
var bounds = kmlLayer1.getDefaultViewport();
map.setCenter(bounds.getCenter());
})
但这没有任何区别。我绝不是 JS 专家,虽然我基本了解上面大部分代码中发生的事情,但我还不够先进,无法即兴创作,甚至无法理解它应该放在哪里。