아래에 나와있는 다양한 카테고리 유형별로 마커를 정렬하려면 cat: dataMarkers.cat
아래로 가져 가야합니다. 임 실은이 방법을 실제로 어떻게 할 것인가에 관해서는 조금 잃어 버렸다. 각 카테고리에 대해 markerManager를 사용하고 있습니까? 고유 한 markerManager 배열에 각 범주가 있어야합니까? 이 요인은 markerClusterer를 어떻게 고려합니까?Google지도 아이콘을 카테고리별로 켜기/끄기
var map;
function initialize() {
var center = new google.maps.LatLng(39.632906,-106.524591);
var options = {
'zoom': 8,
'center': center,
'mapTypeId': google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map_canvas"), options);
<!--Load Markers-->
var markers = [];
for (var i = 0, dataMarkers; dataMarkers = data.markers[i]; i++) {
var latLng = new google.maps.LatLng(dataMarkers.lat, dataMarkers.lng);
var marker = new google.maps.Marker({
position: latLng,
title: dataMarkers.title,
date: dataMarkers.date,
time: dataMarkers.time,
desc: dataMarkers.desc,
img: dataMarkers.img,
add: dataMarkers.address,
cat: dataMarkers.cat,
map: map
});
<!--Display InfoWindows-->
var infowindow = new google.maps.InfoWindow({
content: " "
});
google.maps.event.addListener(marker, 'click', function() {
infowindow.setContent('<div id="mapCont"><img class="mapImg" src="'+this.img+'"/>' +
'<div class="mapTitle">'+this.title+'</div>' +
'<div class="mapHead">Date: <div class="mapInfo">'+this.date+'</div>' +
'<div class="mapHead">Time: <div class="mapInfo">'+this.time+'</div>' +
'<p>'+this.desc+'</p></div>');
infowindow.open(map, this);
});
markers.push(marker);
}
<!--Cluster Markers-->
var markerClusterer = new MarkerClusterer(map, markers, {
maxZoom: 15,
gridSize: 50
});
}
dataMarkers.cat에는 JSON 데이터에 포함 된 5 가지 카테고리가 있습니다. 아직 어떻게 marker.category = THE_CATEGORY_IT_BELONGS_TO; 카테고리를 구분합니다. – RonnieT
각 마커는 둘 이상의 범주를 가질 수 있습니까? 필자가 작성한 것은 각 마커에 하나의 카테고리를 할당하고 마커 배열을 반복하고 현재 선택된 카테고리 만 표시 할 수 있습니다. –
각 마커는 둘 이상의 카테고리를 가질 수 있습니다. 이 일을 끝내지 만 한 범주에서만 정렬됩니다. marker.mycategory = category; marker.myname = name; gmarkers.push (마커); 더 많은 마커를 던지는 것만 큼 간단합니까? – RonnieT