Toggle hide/show Google map Marker

Habe ich eine benutzerdefinierte Google-Karte mit Markierungen der Künstler Standorten. Ich möchte 8 verschiedene Kategorien von Marken. Habe ich gelesen, dass Sie arrays von Markern und Kategorie zuweisen, aber ich weiß es ehrlich gesagt nicht wissen, wo Sie anfangen..

Ich denke, diese Frage kommt in der Nähe, was ich will:
Toggle on/off-Google map-Markierungen nach Kategorien.
Versucht man, die arbeiten, aber ohne Erfolg, ich habe einfach zu wenig wissen.

Hier ist mein HTML. Ich habe eine Karte und ein paar Checkboxen bereit, die Checkboxen sind nicht noch verwendet.

<body onload="initialize()">

<div id="map_container">
    <div id="map_canvas" style="width:700px; height:350px">
    </div>
</div>

<div id="map_filter">
    <form action="#">
      <input type="checkbox" id="beeldend" onclick="displayMarkers(1)" /><label>Beeldende kunst</label><br />
      <input type="checkbox" id="film" onclick="displayMarkers(2)" /><label>Film/fotografie</label><br />
      <input type="checkbox" id="dans" onclick="displayMarkers(3)" /><label>Dans</label>
    </form> 
</div>

</body>

Und hier ist mein JS. Ich habe einen cat1 Schatten und cat1-Symbol, das sollte 8 verschiedene Arten, aber dies vielleicht nicht der Weg, es zu tun, so hielt ich es nur bei einer Katze für die Lesbarkeit.
Dann habe ich einen marker (art1) , hat seine eigene pos, Schatten etc.

function initialize() {
var latlng = new google.maps.LatLng(52.0840356, 5.1546501);
var settings = {
    zoom: 13,
    center: latlng,
    mapTypeControl: true,
    mapTypeControlOptions: {style: google.maps.MapTypeControlStyle.DROPDOWN_MENU},
    navigationControl: true,
    navigationControlOptions: {style: google.maps.NavigationControlStyle.SMALL},
    mapTypeId: google.maps.MapTypeId.ROADMAP
};

var map = new google.maps.Map(document.getElementById("map_canvas"), settings);

var contentString = '<div id="content">'+
    '<div id="siteNotice">'+
    '</div>'+
    '<h1 id="firstHeading" class="firstHeading">Høgenhaug</h1>'+
    '<div id="bodyContent">'+
    '<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</p>'+
    '</div>'+
    '</div>';
var infowindow = new google.maps.InfoWindow({
    content: contentString
});

var cat1Shadow = new google.maps.MarkerImage('images/shadow.png',
    new google.maps.Size(130,50),
    new google.maps.Point(0,0),
    new google.maps.Point(65, 50)
);

var cat1Icon = new google.maps.MarkerImage('images/beeldend.png',
    new google.maps.Size(100,50),
    new google.maps.Point(0,0),
    new google.maps.Point(50,50)
);

var art1Pos = new google.maps.LatLng(52.0840356, 5.1546501);
var art1Marker = new google.maps.Marker({
    position: art1Pos,
    map: map,
    icon: cat1Icon,
    shadow: cat1Shadow,
    title:"Beeldende kunst",
    zIndex: 4
});

google.maps.event.addListener(art1Marker, 'click', function() {
  infowindow.open(map,art1Marker);
});

}

Also.. Was ist der beste Weg, um verschiedene arrays von Marker, und setzen Sie deren Sichtbarkeit mit dem Kontrollkästchen?

Auch, würde ich mag, um in der Lage sein, um Adressen zuzuweisen Markierungen in der Stelle, sucht sich die Koordinaten.

Danke

InformationsquelleAutor meneerfab | 2012-06-21

Schreibe einen Kommentar