我是使用Leaflet.js的geoJson图层,在这里展示国家链接。我正在使用以下代码添加国家标签:
问题在于,应用此标记会阻碍每个国家区域内的鼠标悬停,导致鼠标悬停颜色变化和可点击区域出现问题。
在leaflet 1.0.3中,是否有更好的解决方案来提供不会阻碍国家可点击区域的标签?
我尝试过使用Leaflet.Label扩展的代码,如下所示:
L.marker(layer.getBounds().getCenter(), {
icon: L.divIcon({
className: 'countryLabel',
html: feature.properties.name,
iconSize: [0, 0]
})
}).addTo(map);
问题在于,应用此标记会阻碍每个国家区域内的鼠标悬停,导致鼠标悬停颜色变化和可点击区域出现问题。
在leaflet 1.0.3中,是否有更好的解决方案来提供不会阻碍国家可点击区域的标签?
我尝试过使用Leaflet.Label扩展的代码,如下所示:
var label = new L.Label();
label.setContent(feature.properties.name);
label.setLatLng(center);
map.showLabel(label);
或者
L.marker(center)
.bindLabel('test', { noHide: true })
.addTo(map);
但是这些会导致错误;我理解在v1之后,这个插件的功能已经被整合到Leaflet.js中。
这确实有效,但我更喜欢直接的标签而不是工具提示:
var marker = new L.marker(center, { opacity: 0.00 }); //opacity may be set to zero
marker.bindTooltip(feature.properties.name, { permanent: true, className: "my-label", offset: [0, 0] });
marker.addTo(map);
欢迎提出任何想法。