更改传单层控制图标

Ric*_*c81 2 html javascript css leaflet

当有多个这样的图层控件时,如何更改网页中传单图层控件图标的图标?

目标是在这里有不同的图标:

两层控件截图

代码如下:

var layers1 = L.control.layers(...).addTo(map);
var layers2 = L.control.layers(...).addTo(map);
Run Code Online (Sandbox Code Playgroud)

如果我通过 CSS 更改控件的图标,它会在所有图层控件中更改。

use*_*037 6

我遇到了同样的问题,我找到了一个更快的解决方案。我只是通过这种方式background-image从我的应用程序的style.css覆盖了特定图层控件的属性:

.leaflet-top.leaflet-right .leaflet-control-layers:nth-child(3) .leaflet-control-layers-toggle {
    background-image: /*set you value*/
}
Run Code Online (Sandbox Code Playgroud)

就我而言,第二个图层控件是第三个子控件(工具栏、图层控件 1 和图层控件 2),因此更改该索引以获得正确的控件。希望能帮助到你!

<Edit 2020:修复了代码中的错字>