[Gmaps V3] Markers verwijderen

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Sand0rf
  • Registratie: Oktober 2005
  • Laatst online: 21:45
Goedendag,

Ik ben bezig met het schrijven van een Google Maps pagina die live data op een kaart zet, dit doe ik in versie 3 van Google Maps. Het neerzetten van de markers gaat zonder problemen echter het verwijderen van de markers geeft een error. (Object doesn't support this property or method)
Ik heb de code zoals die door Google is gegevens geimplementeerd. ( http://code.google.com/in...cript/examples/index.html)

Ziet een van jullie de (waarschijnlijk basale) fout die er in mijn code zit.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
var markersArray = [];

.....

function herlaadMarkers()
{
    deleteOverlays();
    drawMarkers();
}

...

function createVliegtuig(map, point, icon, callsign, hex, lat, lng, track, speed, alt, airline, sqwk, radar){

    //Marker aanmaken op gegevens uit XML
    marker = new google.maps.Marker({
        title: callsign,
        map: map,
        icon: icon,
        position: point
    });


    markersArray.push(marker);     <==== Code gegevens door Google

    //On Mouseclick
    google.maps.event.addListener(marker, 'click', function() {
        gekozenVliegtuig = hex;

        if(gekozenVliegtuig != vliegtuigRechts){
            vliegtuigRechts = gekozenVliegtuig;

            var infoarr = new Array(); //Array voor informatievenster
            infoarr[0] = callsign;
            infoarr[1] = hex;
            infoarr[2] = sqwk;
            infoarr[3] = lat;
            infoarr[4] = lng;
            infoarr[5] = track;
            infoarr[6] = airline;
            infoarr[7] = speed;
            infoarr[8] = alt;
            infoarr[9] = radar;

            setDataLinks(infoarr);  //Infovelden vullen

        }

    });

}

....
//Gegeven functie door Google voor het verwijderen van Markers
function deleteOverlays() {
    if (markersArray) {
        for (i in markersArray) {
            markersArray[i].setMap(null);
        }
        markersArray.length = 0;
    }
}


Alvast bedankt

/post


Acties:
  • 0 Henk 'm!

  • Matis
  • Registratie: Januari 2007
  • Laatst online: 26-09 19:17

Matis

Rubber Rocket

Tip van flip: Gebruik Firefox, daarin zit een prima Javascript-console + error-cheker.
Installeer in Firefox ook de Firebug plugin: http://getfirebug.com/ Hiermee kun je heel eenvoudig je Javascrip debuggen en de DOM bekijken :)

If money talks then I'm a mime
If time is money then I'm out of time


Acties:
  • 0 Henk 'm!

  • Sand0rf
  • Registratie: Oktober 2005
  • Laatst online: 21:45
Bedankt voor de tip! Ik heb inmiddels de fout gevonden via de Google Group voor Google Maps.

for (i in markersArray)

moest zijn

for(var i = 0; i<markersArray.length;i++)

/post