Frage

Ich habe Schwierigkeiten, 50 Marker mit dem MarkerClusterer V3 mit Google Maps API V3 zu erklassen.

Ich habe das einfache Beispiel verfolgt, das gefunden wurde bei: http://google-maps-utility-library-v3.googlecode.com/svn/trunk/markerclusterer/docs/examples.html Um meine Funktion zu erstellen, wenn die Karte geladen wird, erhalte ich den folgenden Fehler in Firebug:

a is undefined
Ba(H,function(a){if(!a)return l;return...){return new P(this.T.d,this.P.b,i)}; main.js (line 13)

Meine Funktion besteht nur darin, einen einfachen JSON -Aufruf auszuführen, um den Punkt vom Server zu erhalten und dann das Array der Markierungen zu erstellen, bevor Sie sie dem MarkerClusterer hinzufügen.

function addMarkerCluster(){
    //get json data and create array of map markers and mark up the map using
    //a map cluster

    $.getJSON("feed/kml.php?action=json",
        function(data){

            var map;
            var markers = [];

            var latlng = new google.maps.LatLng(24.91654, 15.31326);

            var myOptions = {
                zoom: 3,
                center: latlng,
                mapTypeId: google.maps.MapTypeId.HYBRID

            };
            map = new google.maps.Map(document.getElementById("googlemap"), myOptions);

            google.maps.event.addListener(map, "tilesloaded", function(){
                attachFancyBox();
                hideLoadDialog();
            });


            //loop through the data and add to the markers array the lat/lng of the centerpoints
            //as google lat/lng objects.
            $.each(data, function(i){

                latlng = new google.maps.LatLng(this.lat, this.lng);
                var marker = new google.maps.Marker(latlng);

                markers.push(marker);

            });



            var markerCluster = new MarkerClusterer(map, markers);


        });


}

Irgendeine Idee, warum dies dazu führt, dass die Google Map main.js auf diese Weise scheitert? Wenn ich nur den MarkerClusterer ohne die Markier -Array füge, rendert die Karte ohne Fehler.

Wenn ich die Markierarme hinzufüge, dann die Kartenfehler.

Vielen Dank,

Gewähren

War es hilfreich?

Lösung

Fix war einfach, dass ich die Tatsache verpassen würde, dass die Google Maps API V3 ein Objekt übergeben muss. Die Lösung war zu ändern

var marker = new google.maps.Marker(latlng) 
to
var marker = new google.maps.Marker({'position' : latlng});
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top