我找到了这个问题的答案,所以我想把它贴在这里以备后人之用,以防其他人也想做同样的事情,或者如果有人想改进它。
我使用 LatLngBounds 对象在地图上定义了 2 个区域,如下所示:
var desert = new google.maps.LatLngBounds(
new google.maps.LatLng(27.694746, 28.294032),
new google.maps.LatLng(62.921001, 78.391689)
);
var plains = new google.maps.LatLngBounds(
new google.maps.LatLng(82.171166, 131.930577),
new google.maps.LatLng(84.144231, 105.541417)
);
然后使用一个函数来跟踪屏幕中心坐标并检测它们是否在这些边界内。如果是这样,将更新 div 的内部 HTML(放置在地图上)。
google.maps.event.addListener(map, 'center_changed', function() {
trackCenter = map.getCenter();
if (desert.contains(trackCenter)) {
var place = 'Sands of Time';
}
else if (plains.contains(trackCenter)) {
var place = "Plains of Kh'rrnthar";
}
else {
place = 'the Frozen Sea';
}
document.getElementById('locationlabel').innerHTML = '<p>Location ~ ' + place + '</p>';
});
我希望这对某人有用,问候