0

Я пытаюсь создать маркеры в разных категориях &, а затем представить их на карте с помощью флажков. Я следил за подходом, найденным в stackoverflow на @Sonia 2 года назад.Ввод/выключение маркеров GM на основе категорий и флажков

мой пример JS, как это:

var map; 
var marker; 
var image = []; 
image['must']='icons/star.png'; 
var markerMust = []; 

function initialize() { 

var myOptions = { 
    center: new google.maps.LatLng(35.0086, 24.928), 
    zoom: 12, 
    mapTypeId: google.maps.MapTypeId.TERRAIN 
    };   

map = new google.maps.Map(document.getElementById('map_canvas'),myOptions); 

marker = new google.maps.Marker({ 
position: new google.maps.LatLng(34.957825, 25.041315), 
map: map, 
title: 'placename', 
clickable: true, 
    category: 'must', 
icon: 'icons/star.png' 
}); 

markerMust.push(marker); 

$('#mustB').click(function() { 
boxclick(this, 'must'); 
}); 
     } //map initialization ends here 
var i; 

function toggleMarkers(markerMust) { 
for (i=0; i<markerMust.length i++) { 
if (markerMust[i].category == category) { 

markerMust[i].setVisible(true); 
} 
} 
document.getElementById(category+"box").checked = true; 
} 
function boxclick(box, category){ 
if (box.checked){ 
toggleMarkers(markerMust); 
} 
} 

* выявленные проблемы:

  • карта не запускается
  • является декларация маркер для правильной категории; и называется ли категория маркеров правильно?
  • Не уверен, что функция toggleMarkers() правильная, если не существует никаких дополнительных дополнений к коду
  • это образец карты с более 100 маркерами, с показанной только одной категорией, для остальных категории

HTML:

<html> 
<body onload="initialize()"> 
<div id="map_canvas" style="width:1200px; height:800px;"></div> 
<form action="#"> 
Must Visit: <input type ="checkbox" id="mustB" onclick="boxclick(this,'must')"> 
</body> 
</html> 
+0

карта работает снова, но без включения различных категорий (категорий) или push.markers вообще ... – giannis

ответ

0

Я забрал заявление JQuery, и она работала отлично без него: D

$('#mustB').click(function() { 
boxclick(this, 'must'); 
}); 
Смежные вопросы