2017-03-07 13 views
0

自転車ルートを使った私のマップ例で2つの小さな問題に苦しんでいます。リーフレット - インタラクティブマップ - イベントを追加

私のマップは次のように動作した瞬間1.At:ルートの上にあなたのマウスはそれが(これは良いですが)強調表示した場合

マウスを外に出すと、ハイライトされます(これも良いです)。

ルートをクリックすると、ハイライト表示され、ズームインして機能します(これは良好です)。

ここに問題があります。地図上(経路ではない)をクリックすると、経路はハイライト表示されなくなりますので、ハイライトなしのデフォルトビューのように見えますが、それは起こりません。 どうすれば実現できますか?私はmap.onイベントを試しましたが、どこにコードを入れるべきかわかりません。

2.ジオジソンラインを相殺する方法はありますか?私はそれらを点線の下に置いておきたいと思います。私は自分のスタイルでオフセットを設定しようとしましたが、うまくいきません。

はここ

http://mapaszlakow.eu/interactive.html

作業マップへのリンクですありがとうございました!あなたの質問の最初の部分については

+0

この質問が終了し、私の答えが役に立ったら、受け入れてください;) – d324223

答えて

1

、地図上に外をクリックしたときに、あなたのルートをdehighlightする - あなたがにGeoJSONためmap.on(..)機能でこれに近づくことができます。codepen上

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); 

例:http://codepen.io/dagmara223/pen/LWbpqP


2番目の質問については、Leaflet.PolylineOffset pluginを試しましたか?

+0

それは仕事でしたが、どうやってルート名の情報ボックスも隠すことができますか?右上隅に現れるもの?私は、オフセットプラグインを調査するつもりです、ありがとう! – Voyteck

+0

@Voyteck私はここで私の答えを編集した。 infoboxをリセットするために 'map.on()'関数の中に 'info.update();'を追加しました。 pozdrowienia;) – d324223

+0

これは素晴らしい作品です! Dziękuję! – Voyteck