2014-10-17 64 views
-1

我正在尝试制作带有一些标记的漂亮谷歌地图。我在网络中发现了一些非常方便的解决方案,它几乎涵盖了我的所有需求:D我想在地图上着色销/标记。GoogleMaps - 多种颜色的多标记

好,努力使工作的jsfiddle,但不幸的是,出事了:(这样你就不会看地图,但也有所有代码:) http://jsfiddle.net/hf37ftra/9/

// Multiple Markers 
var markers = [ 
    ['Marker_name', 51.113882,17.070474], 
]; 

这部分负责为了显示多个标记,我可以以某种方式在这里定义标记的颜色(我知道这是可能的,因为我已经找到了教程来改变所有的标记颜色,但是我想让我们说4-5个不同颜色的标记)?

后面的代码是每个标记的自定义信息框的一部分,所以也许可以这样做:) 谢谢!

回答

1

您可以使用类似:

var markers = [ 
     ['Starter', 51.113882,17.070474,'icon1.png'], 
    ]; 

,改变你的构造函数:

 [...] 
    marker = new google.maps.Marker({ 
     position: position, 
     map: map, 
     title: markers[i][0], 
     icon: markers[i][3] 
    }); 
+0

哇,在我自己的答案前44秒! :D – zel 2014-10-17 12:14:47

+0

很酷,你自己做了;) – SamiX 2014-10-17 12:17:24

0

在您的for循环:

var position = new google.maps.LatLng(markers[i][1], markers[i][2]); 
    bounds.extend(position); 
    marker = new google.maps.Marker({ 
     position: position, 
     map: map, 
     title: markers[i][0] 

您可以添加有额外的行:

icon: 'brownMarker.png' 
+0

是的,我读过关于该课程的API文档:) 但是,当您查看我提供的代码时,您会注意到,定义新标记及其信息窗口比定义每一个新的。所以也许我已经说过一个问题有点不对 - 根据我的代码,我可以添加标记颜色的一些自定义功能,而不需要重新编写代码:) – zel 2014-10-17 12:02:59

0

嗯,我喜欢的计算器,当我可以部分日常学习新的东西别人:)

// Multiple Markers 
var markers = [ 
    ['Title', 51.113882,17.070474, 'http://youriconaddress'], 
]; 

然后,只是一些小的帮助:

// Loop through our array of markers & place each one on the map 
for(i = 0; i < markers.length; i++) { 
    var position = new google.maps.LatLng(markers[i][1], markers[i][2]); 
    bounds.extend(position); 
    marker = new google.maps.Marker({ 
     position: position, 
     map: map, 
     title: markers[i][0], 
     icon: markers[i][3] // [3] tells JS to take third 'argument' from markers variable, from each one. 
    }); 

这样,你可以根据需要添加尽可能多的参数,拥有一个非常好的简单工具来制作更好的谷歌地图!