【问题标题】:Different marker for each location in Google Maps JavaScript API v3Google Maps JavaScript API v3 中每个位置的不同标记
【发布时间】:2026-02-14 14:30:01
【问题描述】:

这里的菜鸟,试图做一些简单而复杂的事情。在this page 上,我成功地在我想要的地方放置了一个一定尺寸的红色 52。为此,我对来自 Google 开发者网站的毫无疑问看起来很熟悉的代码示例进行了自己的更改:

  function initialize() {
  var mapOptions = {
    zoom: 12,
    center: new google.maps.LatLng(-38.153470, 145.141425)
  }
  var map = new google.maps.Map(document.getElementById('map-canvas'),
                                mapOptions);
  var image = 'http://pollbludger.0catch.com/numbers/alp-52-07.png';
  var myLatLng = new google.maps.LatLng(-38.148594, 145.126124);
  var beachMarker = new google.maps.Marker({
      position: myLatLng,
      map: map,
      icon: image
  });
}
google.maps.event.addDomListener(window, 'load', initialize);

我现在要做的是在地图上的不同点添加九个其他标记,每个标记在某种程度上都与其他标记不同。就像我的红色 52 一样,我建议使用的每个标记都有自己的 PNG 存储在 pollbludger.0catch.com 上。我可以通过按顺序对每个标记进行编码来做到这一点,而不是让它通过一个循环吗?

【问题讨论】:

    标签: javascript google-maps google-maps-api-3 google-maps-markers


    【解决方案1】:

    您需要使用属性“icon”和“url”属性并更改“位置”中的新坐标。使用大小为 32x32 的图标。

    如果您不知道如何获取位置,请使用此示例并复制值 lat,lng

     var beachMarker = new google.maps.Marker({
          position: myLatLng,
          map: map,
          icon : {
                url: 'img/yourimageurl.png',//full path of your image
                scaledSize: new google.maps.Size(30,40)//this control the size of your icon
            }  
      }); 
    

    【讨论】:

    • 谢谢 - 这帮助我指明了正确的方向。我现在已经解决了这个问题。