如何在传单地图上显示第二个图标?

How To Display Second Icon on Leaflet Map?

我不知道如何在 Leaflet 地图上显示带有弹出数据的两个单独图标。我已经编写了可以在同一层上同时显示其中一个但不能同时显示两者的代码。

这是我的代码:

var map = L.map("map", { scrollWheelZoom: false }).setView(
  [3.143363, 101.712346],
  12
);
new L.Control.Zoom({ position: "bottomleft" }).addTo(map);
L.tileLayer("https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png", {
  attribution:
    '&copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a>',
  subdomains: ["a", "b", "c"],
}).addTo(map);

var myURL = jQuery('script[src$="leafmalaymap1.js"]')
  .attr("src")
  .replace("leafmalaymap1.js", "");

var myIcon = L.icon({
  iconUrl: myURL + "tower2.png",
  iconSize: [29, 24],
  iconAnchor: [9, 21],
  popupAnchor: [0, -14],
});

for (var i = 0; i < markers.length; ++i) {
  L.marker([markers[i].latitude, markers[i].longitude], { icon: myIcon })
    .bindPopup(
      'Location: <span class="mapbold">' +
        markers[i].area +
        '</span><br>Hill LRD: <span class="mapbold">' +
        markers[i].hillLrd +
        '</span><br>NE Site Name: <span class="mapbold">' +
        markers[i].neSiteName +
        '</span><br>NE Latitude: <span class="mapbold">' +
        markers[i].latitude +
        '</span><br>NE Longitude: <span class="mapbold">' +
        markers[i].longitude +
        '</span><br>NE Site Address: <span class="mapbold">' +
        markers[i].siteAddress +
        "</span><br>"
    )
    .addTo(map);
}

var myIcon = L.icon({
  iconUrl: myURL + "tower3.png",
  iconSize: [29, 24],
  iconAnchor: [9, 21],
  popupAnchor: [0, -14],
});

for (var o = 0; o < markers.length; ++o) {
  L.marker([markers[o].latitude2, markers[o].longitude2], { icon: myIcon })
    .bindPopup(
      'Bax LRD: <span class="mapbold">' +
        markers[o].feBaxLrd +
        '</span><br>Baxis Latitude: <span class="mapbold">' +
        markers[o].latitude2 +
        '</span><br>Bax Longitude: <span class="mapbold">' +
        markers[o].longitude2 +
        '</span><br>Bax FE Site Address: <span class="mapbold">' +
        markers[o].feSiteAddress +
        "</span><br>"
    )
    .addTo(map);
}

如果我更改 [markers[i][markers[o] 的顺序,两者将独立工作,但不会同时显示。

我尝试在 Whosebug 上进行搜索,但没有出现相关问题。 非常感谢有关我需要对此 JS 脚本进行哪些更改才能完成此工作的一些指导

我错误地定义了两次 'myIcon' 并通过将第二个 'myIcon' 更改为 'myIcone' 并将第二个 [markers[i] 更改为 [markers[o] 来解决问题] 一切都奏效了。 非常感谢 IvanSanchez 为我指明了正确的方向