1

私はGoogleマップといくつかのマーカーを持っています。マーカーをクリックすると、ストリートビューマップが開き、閉じて再び開くことができます。

単一のグローバル ストリート ビュー インスタンスを使用し、それを非表示にするために display:none を使用しようとしましたが、問題は、マップが非表示になった後に再びレンダリングが表示されないことです。

また、毎回新しいグローバル インスタンスを開始しようとしましたが、古いインスタンスは破棄されず、古いオーバーレイの上に新しいオーバーレイをレンダリングするように見えます。

これを達成するための最良の方法は何ですか?

編集:

おそらく別の質問ですが、上記を達成するのが簡単でない場合、緯度経度を指定して、既存のマップをストリート ビュー モードに切り替えるにはどうすればよいですか? 私はグーグルで検索してきましたが、明らかな結果が見つかりませんでした。

4

1 に答える 1

1

OK、「私も毎回新しいグローバルインスタンスを開始しようとしましたが、古いインスタンスは破棄されていないようで、古いオーバーレイの上に新しいオーバーレイをレンダリングします.」については間違っていました。だからそれは実行可能です。

質問の更新に関しては、次のリンクから回答を得ました。

https://developers.google.com/maps/documentation/javascript/examples/streetview-overlays

同様の目的がある場合のコードは次のとおりです。

var sv = map.getStreetView();
sv.setPosition(new google.maps.LatLng(lat,lng));                                                                                                   
sv.setVisible(true); 
于 2013-11-15T01:57:48.713 に答える