Prvo obrati pažnju na html kod, meni npr u ff nije htelo da prikaže mapu.
Zatim promenljivu type iz funkcije searchLocationsNear potrebno je proslediti funkciji createMarker, pa dodaj još jedan argument createMarker funkciji i prilikom poziva nje unutar funkcije searchLocationsNear prosledi promenljivu type, dakle kod:
Kôd:
createMarker(latlng, name, address);
zameni sa:
Kôd:
createMarker(latlng, name, address, type);
I kod:
Kôd:
function createMarker(latlng, name, address)
zameni sa:
Kôd:
function createMarker(latlng, name, address, type)
Kod:
Kôd:
if(typeof markerGroups[type] !== 'undefined') {
markerGroups[type].push(marker);
}
Da li postoji neki poseban razlog zašto si isti dodao na događaj click svakog posebnog markera? Stavi ovaj kod izvan (ispred/iza) dodeljivanja funkcije na događaj click merkerima, tačnije umesto:
Kôd:
google.maps.event.addListener(marker, 'click', function() {
infoWindow.setContent(html);
infoWindow.open(map, marker);
if(typeof markerGroups[type] !== 'undefined') {
markerGroups[type].push(marker);
}
});
Stavi
Kôd:
if(typeof markerGroups[type] !== 'undefined') {
markerGroups[type].push(marker);
}
google.maps.event.addListener(marker, 'click', function() {
infoWindow.setContent(html);
infoWindow.open(map, marker);
});
Radiće i bez ove promene ali je potrebno prvo klikuti na sve marker da bi oni pripali svojoj grupi.
Ne znam kao si zamislio za sidebar-om, ali sada će nastati problem jer klikom na neku od stavki u istom i dalje će se prikazivati infoWindow bez obzira da li je marker prikazan ili sakriven, zato ispitaj prvo da li je marker vidljiv pa onda prikaži infoWindow. Zatim ukoliko je infoWindow vidljiv a marker za isti se uklanja info window ostaje vidljiv, zato kada uklanjaš marker uklanjaj i infoWindow.