简体   繁体   English

在Google Maps API中更改颜色多个标记

[英]Change color multiple marker in google maps API

I would like to ask about how to change color of a marker in google maps. 我想问一下如何在Google地图中更改标记的颜色。 The condition is, I have a program to create multiple markers in google maps. 条件是,我有一个程序可以在Google地图中创建多个标记。 But how I can give specified color to each marker? 但是,如何给每个标记指定颜色呢?

this is my code for now, 这是我现在的代码,

 var markers = []; var map; var labels = 'ABCD'; var labelIndex = 0; function addMarker(location) { var marker = new google.maps.Marker({ position: location, label: labels[labelIndex++ % labels.length], icon: 'http://maps.google.com/mapfiles/ms/icons/green-dot.png' map: map }); markers.push(marker); 

One way would be to pass the color into the addMarker function: 一种方法是将颜色传递给addMarker函数:

function addMarker(location, color) {
  var marker = new google.maps.Marker({
    position: location,
    label: labels[labelIndex++ % labels.length],
    icon: 'http://maps.google.com/mapfiles/ms/icons/'+color+'.png',
    map: map
  });
  markers.push(marker);
}

proof of concept fiddle 概念证明

在此处输入图片说明

code snippet: 代码段:

 var markers = []; var map; var labels = 'ABCD'; var labelIndex = 0; function initialize() { map = new google.maps.Map( document.getElementById("map_canvas"), { center: new google.maps.LatLng(40.7127837, -74.0059413), zoom: 11, mapTypeId: google.maps.MapTypeId.ROADMAP }); // New York, NY, USA (40.7127837, -74.0059413) // Newark, NJ, USA (40.735657, -74.1723667) // Jersey City, NJ, USA (40.72815749999999, -74.07764170000002) // Bayonne, NJ, USA (40.6687141, -74.11430910000001) addMarker({ lat: 40.7127837, lng: -74.0059413 }, "red"); addMarker({ lat: 40.735657, lng: -74.1723667 }, "green"); addMarker({ lat: 40.7281575, lng: -74.0776417 }, "yellow"); addMarker({ lat: 40.6687141, lng: -74.1143091 }, "orange"); } google.maps.event.addDomListener(window, "load", initialize); function addMarker(location, color) { var marker = new google.maps.Marker({ position: location, label: labels[labelIndex++ % labels.length], icon: { url: 'http://maps.google.com/mapfiles/ms/icons/' + color + '.png', labelOrigin: new google.maps.Point(15, 10) }, map: map }); markers.push(marker); } 
 html, body, #map_canvas { height: 100%; width: 100%; margin: 0px; padding: 0px } 
 <script src="https://maps.googleapis.com/maps/api/js"></script> <div id="map_canvas"></div> 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM