Frage

Das treibt mich mental.

Ich verwende MarkerCluster mit Google Maps v3, und es funktioniert gut in FF, aber wenn ich (und das Client) es in Chrome oder Safari aufwirbeln die Cluster arn't es.

Kein Fehler, nur nicht in WebKit arbeiten.

Ein paar Anmerkungen:. Es wird von einem Ajax-loaded json kommen und es ist in jquery

Dies ist die Funktion der Betreuung der Zugabe:

add_clusters: function() {
        markers = [];
        $.each( interpreters, function ( i, interpreter ){
            //maps.add_postcode_marker(i, 'interpreter');
            var latLng = new google.maps.LatLng(interpreter.lat, interpreter.lng);
            //, map: map
            interpreters[i].marker = new google.maps.Marker({ position: latLng });
            maps.add_info_box(i, "interpter");
            markers.push(interpreters[i].marker);
            app.log(interpreters[i].marker);
        });
        markerCluster = new MarkerClusterer(map, markers);
    }

Cheers!

Just zu wiederholen, es gibt keine Fehler in Chrome, es ist nur nicht angezeigt werden.

War es hilfreich?

Lösung

Das Problem war mit makercluster selbst.

Line 725 speziell. JQuery wurde ebenfalls enthalten und das Verhalten von .indexOf wurde leicht zwischen den Browsern geändert.

In firefox wurde Rückkehr die richtige -1.

Allerdings Chrom nicht definiert wurde zurück.

Sie können das Problem beheben, indem Zeile ändern 725 bis ...

return this.markers_.indexOf(marker) != -1 && this.markers_.indexOf(marker) != undefined;

Andere Tipps

Auf einen Blick kann ich nicht sehen, was mit diesem Snippet falsch ist. Es sieht alles gut zu mir.

Können Sie jsfiddle.net eine Seite erstellen, die eine Arbeits Demo enthält (in Firefox), so dass wir es sehen können / versuchen zu bearbeiten es selbst?

Ich hatte ein ähnliches Problem mit PrimeFaces. Die Lösung bestand darin, sicherzustellen, dass die Antwort mimt ist text/html.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top