J. *_*son 5 javascript geojson leaflet
我正在使用传单和 pointToLayer 函数显示 GeoJSON 层。到目前为止一切正常。
但我想根据 GeoJSON 的属性以特定顺序显示我的点。这很重要,因为我的点的半径随该属性的变化而变化,并且我需要在顶部显示较小的圆圈。我希望我能说清楚。
我尝试了很多事情,但我认为这是我最好的尝试:
var pointLayer = L.geoJson(centroids, {
pointToLayer: function (feature, latlng) {
return L.circleMarker(latlng, {
fillColor: "#76C551",
color: "#000",
weight: 1,
fillOpacity: 1
});
},
onEachFeature: function (feature, layer) {
var radius = calcPropRadius(feature.properties.nb);
layer.setRadius(radius);
feature.zIndexOffset = 1/feature.properties.nb*1000;
layer.bindPopup(feature.properties.name + " : " + String(feature.zIndexOffset));
}
});
Run Code Online (Sandbox Code Playgroud)
您可以注意到,可以在弹出窗口中读取功能的 zIndexOffset,并且它们看起来不错。但圆圈的显示顺序并不反映 zIndexOffset。我尝试过使用setZIndexOffset方法,但据我了解,它仅适用于标记。
有谁知道如何做到这一点 ?非常感谢您的任何见解!
正如您所发现的,该zIndexOffset选项仅适用于L.marker's。
L.circleMarker进入,您可以使用和方法overlayPane将它们重新排序。.bringToFront().bringToBack()
| 归档时间: |
|
| 查看次数: |
2020 次 |
| 最近记录: |