我正在尝试使用Google Maps V3绘制10个以上的标记,但它停在10个位置。我没有对标记进行地理编码,我已经有了经纬度。有谁知道我为什么会有这个问题?下面是我正在使用的代码,这没什么疯狂的。

var map = null;
var infowindow = null;
$(document).ready(function () {
    var venueLatLng = new google.maps.LatLng($('#hdnVenueLat').val(), $('#hdnVenueLng').val());
    var options = {
        center: venueLatLng,
        zoom: 15,
        mapTypeId: google.maps.MapTypeId.ROADMAP
    };
    map = new google.maps.Map(document.getElementById("map_canvas"), options);
    var marker = new google.maps.Marker({
        position: venueLatLng,
        map: map,
        title: $("#hdnVenueName").val()
    });
    drawPoints();
    infowindow = new google.maps.InfoWindow();
    $('.listing').click(function () {
        drawInfoWindow(markers[$(this).data('id')])
    })
})

function drawPoints() {
    var center = new google.maps.LatLng($('#hdnVenueLat').val(), $('#hdnVenueLng').val());
    var bounds = new google.maps.LatLngBounds();
    $('.listing').each(function (index) {
        var lat = $(this).data('lat').toString();
        var lng = $(this).data('lng').toString();
        var latLng = new google.maps.LatLng(lat, lng);
        var id = $(this).data('id').toString();
        var marker = new google.maps.Marker(
            {
                id: id,
                position: latLng,
                icon: new google.maps.MarkerImage('/images/map-sprites.png', new google.maps.Size(26, 33), getImagePos(index)),
                //shadow: new google.maps.MarkerImage('/images/map-sprites.png', new google.maps.Size(36, 24), new google.maps.Point(35, 345), new google.maps.Point(4, 15)),
                map: map,
                title: $(this).data('name')
            }
         );
        google.maps.event.addListener(marker, 'click', function () {
            drawInfoWindow(marker);
        });
        markers[id] = marker;
        bounds.extend(new google.maps.LatLng(lat, lng));
    })
    map.fitBounds(bounds);
}

最佳答案

kaliatech-您做对了。 Google将自定义图标的数量限制为在地图上同时显示10个,这非常好。谢谢你的帮助。

10-06 08:21