확대/축소 수준에 따라 2 개의 다른 마커가 표시되는 데 문제가 있습니다. 예를 들어, 줌 레벨이 10보다 작 으면 아이콘이 표시되고, 확대 레벨이 10보다 큰 경우 아이콘이 표시됩니다. 2. 마커 관리자를 살펴 봤지만 약간 길을 잃었습니다. 여기에 내 코드입니다 : 당신은 내가 JSON 파일을 보는 바와 같이Google지도 아이콘 관리자
var url = "json.api";
function initialize() {
var myLatlng = new google.maps.LatLng(0, 0);
var myOptions = {
maxZoom: 16,
zoomControl: true,
disableDefaultUI: true,
center: myLatlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
downloadUrl(url, function(data) {
var j = eval('(' + response + ')');
var jlength = j.data.hotels.length;
var bounds = new google.maps.LatLngBounds();
for(i=0; i < jlength; i++) {
var x = parseFloat(j.data.hotels[i].lat);
var y = parseFloat(j.data.hotels[i].lon);
var z = new google.maps.LatLng(x,y);
var title = j.data.hotels[i].title;
var hotel_id = j.data.hotels[i].id;
var address = j.data.hotels[i].address;
var star = j.data.hotels[i].star;
var thumbnail = j.data.hotels[i].thumbnail;
var contentstring = 'some html';
var marker = createMarker();
var infowindow = new google.maps.InfoWindow({
content: contentstring
});
bounds.extend(z);
map.fitBounds(bounds);
//NOT SURE IF THESE ARE NEEDED
// zoomChangeBoundsListener = google.maps.event.addListener(map, 'bounds_changed', function(event) {
// google.maps.event.removeListener(zoomChangeBoundsListener);
// });
// google.maps.event.addListener(map, 'zoom_changed', function() {
// });
};
if (map.getZoom() == 21) {map.setZoom(16);}
if (map.getZoom() < 12) {map.setZoom(map.getZoom()+1);}
//alert(map.getZoom())
function createMarker(){
var marker = new google.maps.Marker({
position: z,
map: map,
title: title,
html: contentstring,
icon: 'icona.png'
});
google.maps.event.addListener(marker,'click',function(){
infowindow.setContent(this.html);
infowindow.open(map,marker);
});
};
});
};
하는 내가 루프를 통해 위도와 LNG (및 기타 비트)를 얻을 다음 정보 내 JSON 파일에 모든 것을 표시하는 마커를 만들 수 창 등 .... 그냥 createMarker2 두 번째 마커 함수를 만들 수 있습니다 및 일부 호출하는 방법을 확대/축소 10 경우? ... 어떤 도움을 주시면 감사하겠습니다. 필자는 온라인에서 몇 가지 예를 살펴 보았지만 혼란스러워했습니다. 미리 감사드립니다.
고마워요, 아프게하고 알려주세요. – Hatzi