注意:模拟发布到change default icon toolbar (Leaflet)。
嘿伙计们。我正在尝试为传单Draw工具栏添加自定义图标。但我似乎无法弄清楚如何。如图所示,我有两个标记。目标是更改工具栏中的一个图标。我的代码如下:
L.DrawToolbar.include({
getModeHandlers: function (map) {
return [
{
enabled: true,
handler: new L.Draw.Polyline(map, { metric: true, repeatMode: true }),
title: '...'
},
{
enabled: true,
handler: new L.Draw.Polygon(map, { allowIntersection: false, showArea: true, metric: true, repeatMode: false }),
title: '...'
},
{
enabled: true,
handler: new L.Draw.Marker(map, { icon: new L.Icon.Default() }),
title: '...'
},
{
enabled: true,
handler: new L.Draw.Marker(map, { icon: new L.Icon.Default() }),
title: '...'
}
];
}
});
答案 0 :(得分:3)
正如您可以看到带有inspect元素的here,有这个CSS属性:
.leaflet-draw-toolbar a {
background-image: url(images/spritesheet.png);
background-repeat: no-repeat;
}
Spritesheet是:
您只需使用所需background-image: url();
元素上的图标网址编辑a
(多边形一例):
.leaflet-draw-toolbar .leaflet-draw-draw-polygon {
background: url(data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='20' height='20'><circle cx='5' cy='5' r='5' /></svg>) no-repeat;
background-color: #FFF;
}
您可以添加SVG,图片或内容。