2016-03-29 3 views
0

検索結果を表示する際に、同じマップ上のすべての結果と要求された要素を見たい場合があります。 リーフレットにポイントを追加するにはどうすればマップ上に表示する必要がありますか?

が、私は同じ層に検索ポイントを追加し、それを行うと、次のように fitBounds方法を使用するには:今

map.fitBounds(markerLayer.getBounds().pad(0.10)); 

、問題は私のマーカーがまだマップ上に表示されている、それはすべきではありません。単一のマーカーの表示/非表示を切り替えることは可能ですか?これまでに試してみました

  • は0マーカーで不透明度を設定するには、実際に表示されていないが、カーソルはまだホバーに変更し、あなたはまだそれをクリックすることができます。
  • 要求された都市マーカーを別のレイヤーに設定します。複数のレイヤーの境界を取得できないため、またレイヤーをLayerGroupにグループ化しても、その境界を取得することはできません。

    markerLayer.setOpacity(0); 
    

    http://leafletjs.com/reference.html#marker-setopacityを参照)


    編集:

    あなたはそれになりたくない場合は、マーカーの不透明度を設定することができ

答えて

2

クリック可能な場合は、マーカーを作成するときにclickableオプションを使用できます。

var markerLayer = L.marker([0, 0], { clickable: false }); 

動作しますが、アイテムがまだクリック可能で、ホバー上のポインタの変更

+0

http://leafletjs.com/reference.html#marker-clickableを参照してください)。 –

+0

はい、質問は具体的に*表示*の切り替えを尋ねるためです。あなたが見たいと思うなら**、それがそこにないかのように振る舞いますが、もっとも簡単な選択肢は地図からマーカーを削除することでしょうか? 'map.removeLayer(markerLayer)' – Nick

+0

いいえ、つまり、私が望まない私のレイヤーのすべてのポイントを失うことになるからです。そして、あなたは複数のレイヤの境界を得ることができません... –

関連する問題