【问题标题】:Change Marker icon based on tile layer change - leaflet根据平铺层更改更改标记图标 - 传单
【发布时间】:2019-08-20 17:22:57
【问题描述】:

我是传单的新手,我想知道如何根据瓷砖层的变化来改变标记图标。

例如:如果我在基础层中有位置图标,并且希望在选择卫星作为平铺层时将其更改为总线图标。

【问题讨论】:

    标签: leaflet


    【解决方案1】:

    最好的方法是定义图标并在图层更改时设置事件:

    var icon1 = L.icon({
        iconUrl: 'marker.png',
        iconSize:     [38, 95],
    });
    var icon2 = L.icon({
        iconUrl: 'bus.png',
        iconSize:     [38, 95],
    });
    
    var marker = L.marker([51.5, -0.09], {icon: icon1}).addTo(map);
    
    map.on('baselayerchange', function(e) {
        if(e.layer.name == "whatyouwant"){
            marker.setIcon(icon1);
         }else{
            marker.setIcon(icon2);
         }
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-12-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-06
      • 2019-04-20
      • 2021-02-27
      相关资源
      最近更新 更多