2017-06-24 1 views
1

私は、WebSocketを介してクライアントブラウザに「座標」の連続ストリームを配信しているリーフレットプロジェクトを持っています。私は設定された時間(1秒または2秒のようなもの)のそれらの場所に対応するマーカーを表示することができ、それらを削除する(より多くの場所のための部屋を作るために)必要があります。リーフレット・マップにタイム・マーカーを作成しますか?

誰かが私を助けたり、私が助けを見つけることができるリソースの方向に私を指摘できますか?

ありがとうございます!

編集:なぜdownvoteですか?その正当な共通の質問と、多くのソリューションがオンラインにないもの。ここで

+0

正しい質問をしなかったので、おそらくダウンボートがあります。文字通り尋ねると、«誰でも助けてくれますか»»答えは«はい»になるでしょう。[それについては驚かないでください](http://www.strcat.de/questions-with-yes -or-no-answers.html)。 – IvanSanchez

+0

なぜあなたは私の質問の文を1つ分けて、それが問題だと思うのですか?あなたは時間マーカーとチラシについて残りの部分を見ますか?誰かがあなたに朝食のテーブルでバターを渡すことができるかどうか尋ねるとき、彼らは物を選んで動かすあなたの能力に疑問を投げていません、彼らは実際にバターを望んでいます。助けを求めるだけの礼儀正しい方法です。 – Vib

+0

**はい**、私は質問の残りの部分についてです。しかし、これは朝食用テーブルではなく、朝食用テーブルの礼儀のルールはここでは適用されません。ここ(私を含む)の多くの人は、代わりにできるだけあなた自身のために多くの研究をしたことを示すことは礼儀正しく思っています。 [ESRの "スマートな方法で質問する]"を引用する(http://catb.org/~esr/faqs/smart-questions.html#explicit):«必要な時間を最小限に抑えるために質問をフレーム化すると便利です専門家のためにそれを»»。 – IvanSanchez

答えて

2

は、ドキュメント(http://leafletjs.com/reference-1.0.3.html#layer)からいくつかのコードです:

var layer = L.Marker(latLng).addTo(map); 
layer.addTo(map); 
layer.remove(); 

だから、2秒後にそれを除去するために、私はあなたがこの1試みることができると思う:

var layer = L.Marker(latLng).addTo(map); 
layer.addTo(map); 

setTimeout(function() { 
    layer.remove(); 
}, 2000); 

Example

+0

これはマップ全体がタイムアウトする原因になりますか?私は、各マーカーが生存している2秒間のウィンドウで(古い)マーカーを追加したり削除したりできます。私はマーカーのために設定するTTL(生きる時間)のような何かを望んでいたが、私はそれを考えていない。 – Vib

+1

私は例を追加しました。 setTimeout呼び出し内の関数は非同期に実行されるため、マップはタイムアウト時に機能するはずです。しかし、マーカーの設定は素晴らしい機能です! –

関連する問題