JavaScripts для отображения нескольких мест на карте - PullRequest
0 голосов
/ 28 ноября 2011

Я написал этот код для отображения нескольких мест на карте d. Но я хочу, чтобы маркер был красным, если location[i].visit_status равен 0, и зеленым, если location[i].visit_status равен 1 (у меня на машине зеленые и красные значки), поэтому я написал этот код, но по причине, по которой я не знаете, это не работает. Кто-нибудь может мне помочь, пожалуйста?

Вот код:

var locations=[{"id_retailer":"3","retailer_name":"ret1","retailer_latitude":"3.083826","retailer_longitute":"101.731689","visit_date":"2011-11-11","visit_status":"0"}];

var map = new google.maps.Map(document.getElementById('map'), {

  zoom: 8,

  center: new google.maps.LatLng(2.67968661580376,102.23876953125),

  mapTypeId: google.maps.MapTypeId.ROADMAP

});


var infowindow = new google.maps.InfoWindow();
var marker, i;

for (i = 0; i < locations.length; i++) {

  marker = new google.maps.Marker({

    position: new google.maps.LatLng(locations[i].retailer_latitude, locations[i].retailer_longitute),

    map: map,
    if(locations[i].visit_status)
      icon: 'images/1.png';
    else
      icon: 'images/0.png';
    title: locations[i].retailer_name

  });

  google.maps.event.addListener(marker, 'click', (function(marker, i) {

    return function() {
      infowindow.setContent("Name: "+locations[i].retailer_name);
      infowindow.open(map, marker);
    }

  })(marker, i));

}

window.onunload=GUnload;

Ответы [ 2 ]

1 голос
/ 28 ноября 2011

Изменить этот синтаксис

 map: map,
    if(locations[i].visit_status)
      icon: 'images/1.png';
    else
      icon: 'images/0.png';

этим другим:

 map: map,
 icon: locations[i].visit_status ? 'images/1.png':'images/0.png',
0 голосов
/ 28 ноября 2011

Я бы рекомендовал то же самое, что и Adilson, более того, не забудьте установить тень для значка - это пример стандартной тени для значка (если вы используете значки, которые имеют ту же форму, что и стандартная):

icon: locations[i].visit_status ? 'images/1.png' : 'images/0.png',
shadow: new google.maps.MarkerImage(
    'http://maps.gstatic.com/mapfiles/shadow50.png',
    null,
    null,
    new google.maps.Point(10, 34)
)

Я хотел бы знать, как лучше определить тень по умолчанию, но Я не знаю - см. Этот вопрос.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...