我正在努力解决我的自行车路线示例地图中的两个小问题。
1.我的地图就像这样:
当你将鼠标悬停在路线上时,它会突出显示(这很好)。
当你将鼠标移出路线时,它会消失(这也很好)。
当您点击路线时,它会突出显示并缩放到要素(这很好)。
这里有问题的部分:当你点击地图上的任何地方(而不是路线)时,路线应该取消高亮显示,因此它看起来像没有任何突出显示的默认视图,但它不会发生。 我怎样才能做到这一点?我尝试了map.on事件,但我不确定将它放在代码中的哪个位置。
2.有没有办法抵消geojson线?我想把它们放在虚线下面。我尝试在我的风格中设置偏移量,但它不起作用。
这是工作地图的链接
http://mapaszlakow.eu/interactive.html
非常感谢!
答案 0 :(得分:1)
至于你问题的第一部分,要在地图上点击它之外取消你的路线 - 你可以使用map.on(..)
geojson函数来解决这个问题:
var geojson = L.geoJson(szlaki, {
onEachFeature: function(feature, layer) {
layer.on({
...
}
});
map.on({
'click': function(e) {
geojson.resetStyle(layer);
info.update();
selected = null;
}
});
}
}).addTo(map);
关于codepen的示例:http://codepen.io/dagmara223/pen/LWbpqP
关于第二个问题,你试过Leaflet.PolylineOffset plugin吗?