我的最终目标是:仅在当前地图视窗内加载地图标记,并且如果地图被移动,重新加载新视窗内的地图标记。
据我所知,要做到这一点,我需要地图的角落坐标,而这些坐标只能在地图空闲时加载,这样我才能将这些坐标传递给我的PHP文件来查询我的数据库并输出角落内的地图标记的XML(我试图通过限制查询仅针对相关的地图区域,从而减轻我的数据库压力)。我在初始化后添加虚拟标记时遇到了麻烦(请参阅下面的代码)。它只是没有加载标记,其他所有内容都可以正常工作。
<script src="https://maps.googleapis.com/maps/api/js?v=3.exp"></script>
<script>
function initialize() {
var map = new google.maps.Map(document.getElementById("googleMap"), {
zoom: 12,
center: new google.maps.LatLng(40.779502, -73.967857)
});
google.maps.event.addListener(map, 'idle', function() {
/*bounds = map.getBounds();
ne = bounds.getNorthEast();
sw = bounds.getSouthWest();
window.top.showBounds();*/
TestMarker();
});
}
function addMarker(location) {
marker = new google.maps.Marker({
position: location,
map: map
});
}
// Testing the addMarker function
function TestMarker() {
CentralPark = new google.maps.LatLng(40.779502, -73.967857);
addMarker(CentralPark);
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>