Подтвердить что ты не робот

Google map API v3 изменить значок маркера на клик?

Следующая документация Google до изменения значка маркера была простой. Но я застрял, я не знаю, как изменить изображение при нажатии маркера?

Мой код:

<script>
  function initialize() {

    var latlngPos = new google.maps.LatLng(<?php echo $event_google_map_coordinates; ?>);

    var mapOptions = {
      zoom: 16,
      center: latlngPos,
      mapTypeId: google.maps.MapTypeId.ROADMAP
    };

    var map = new google.maps.Map(document.getElementById('googlemap_event'),
      mapOptions);

    var marker = new google.maps.Marker({
      position: latlngPos,
      map: map,
      //animation: google.maps.Animation.BOUNCE,
      icon: '<?= get_bloginfo("template_url"); ?>/images/marker.png'
    });

    var infowindow = new google.maps.InfoWindow({
      position: latlngPos,
      maxWidth: 200,
      content: "<h3><?php the_title(); ?></h3><?php if ($event_address_meta) {_e($event_address_meta);} ?>"
    });

    //open onclick
    google.maps.event.addListener(marker, 'click', function() {
      infowindow.open(map);
    });

    //open infowindow onload
    //infowindow.open(map);

  }

function loadScript() {
  var script = document.createElement('script');
  script.type = 'text/javascript';
  script.src = 'http://maps.googleapis.com/maps/api/js?key=AIzaSyCK3XUMWOH0GIiuj3VeprakKZXoo_nDV08&sensor=false&' +
    'callback=initialize';
  document.body.appendChild(script);
}

window.onload = loadScript; < /script>
<div id="googlemap_event"></div>
4b9b3361

Ответ 1

Попробуйте это.

//open onclick
   google.maps.event.addListener(marker, 'click', function() {
    marker.setIcon("Your Image");                                    
    infowindow.open(map);
    });

Ответ 2

Вам нужно установить значок маркера в событии клика.

google.maps.event.addListener(marker, 'click', function() {
          infowindow.open(map);
          //Change the marker icon
          marker.setIcon('https://www.google.com/mapfiles/marker_green.png');
     });

Вот пример: jsfiddle

Ответ 3

Я изменил предыдущую скрипту и позволил отменить выбор маркера.

http://jsfiddle.net/zsw76pq9/

google.maps.event.addListener( map,'click', function () {
    infoWindow.close();

    //Change the marker icon
    marker.setIcon('https://www.google.com/mapfiles/marker_black.png');
});