2011-09-03 14 views
5

私は自分のサイトにGoogle mapを表示するためにGoogle map APIを使用しています。ここで私はコードを次のように静的にGoogleマップを追加することができます:google map infowindowを動的に追加するには?

 var map = new GMap2(document.getElementById('map')); 
     map.addControl(new GSmallMapControl()); 
     map.setCenter(new GLatLng(21.183008, 81.36186199999997), 6); 



     var marker = new GMarker(new GLatLng(21.183008, 81.36186199999997), {}); 
     GEvent.addListener(marker, "mouseover", function() { 
      marker.openInfoWindow("Hi "); 
     }); 
     GEvent.addListener(marker, "mouseout", function() { 
      map.closeInfoWindow(); 
     }); 
     map.addOverlay(marker);   


     var marker1 = new GMarker(new GLatLng(21.25, 81.62), {}); 
     GEvent.addListener(marker1, "mouseover", function() { 
      marker1.openInfoWindow("HI All"); 
     }); 
     GEvent.addListener(marker1, "mouseout", function() { 
      map.closeInfoWindow(); 
     });   
     map.addOverlay(marker1); 

私は配列のマーカー値を設定しました。私は動的に作成するためにそれを試してみると、最後の情報ウィンドウが表示されます。応答を待っている

は....

+0

これは閉鎖問題のように聞こえるが、どこの配列である(と期待 'for' -ループ)? – Halcyon

+0

このコードは以前のバージョンのgoogle maps apiからのものです。 v3はかなり時間がかかります:http://code.google.com/apis/maps/documentation/javascript/basics.htmlそのページには素晴らしいサンプルがあります。 – tugberk

+0

あなたはjsfiddleをセットアップできますか..私はあなたが使用する必要があるGoogleマップのAPIは何ですか – Baz1nga

答えて

0

これはJavaScriptでのクロージャと関係があり、それは共通の問題です。ソリューションについてはGoogle Maps Javascript API Docsを参照してください。

とクロージャの詳細については、私は(例えば、コメント hereのような)StackOverflowの上で検索することをお勧めいたしますでしょう;)