2011-10-18 9 views
4

私は、主に地図検索であり、英国で起きているプロレスのイベントを表示するウェブサイトを構築しています。私はこれを達成するためにGoogle Maps JavaScript APIのv3を使用していますが、私のアプリのInfoWindowがInfoWindowsと異なって見える理由について質問があります。maps.google.co.ukGoogle Mapで新しい正方形InfoWindowを手に入れようか?

次の2つのスクリーンショットを比較してください。鉱山:

enter image description here

そしてGoogleマップのウェブサイト:Googleマップのウェブサイトはありませんが、情報ウィンドウを乗している、そしてなぜ私のアプリは、GoogleマップのJavaScriptの最新バージョンを使用しないのはなぜ

enter image description here

APIは丸みを帯びたInfoWindowを持っていますか?

答えて

5

マーティン、

私はGoogleマップAPIのデモを行ってこのデモを見つけた:

http://gmaps-samples-v3.googlecode.com/svn/trunk/geocoder/v3-geocoder-tool.html#q%3D42.032974%2C-90.703125

あなたは二乗情報ウィンドウが表示されるはずです。

私はフードの下を見て、下のコードがあなたのウィンドウの境界オーバーレイになる可能性があることを発見しました。それが役に立てば幸い。

var openInfoWindow = function(resultNum, result, marker) { 
    return function() { 
     if (selected != null) { 
     document.getElementById('p' + selected).style.backgroundColor = "white"; 
     clearBoundsOverlays(); 
     } 

     map.fitBounds(result.geometry.viewport); 
     infowindow.setContent(getAddressComponentsHtml(result.address_components)); 
     infowindow.open(map, marker); 

     if (result.geometry.bounds) { 
     boundsOverlay = new google.maps.Rectangle({ 
      'bounds': result.geometry.bounds, 
      'strokeColor': '#ff0000', 
      'strokeOpacity': 1.0, 
      'strokeWeight': 2.0, 
      'fillOpacity': 0.0 
     }); 
     boundsOverlay.setMap(map); 
     google.maps.event.addListener(boundsOverlay, 'click', onClickCallback); 
     document.getElementById('boundsLegend').style.display = 'block'; 
     } else { 
     boundsOverlay = null; 
     } 

     viewportOverlay = new google.maps.Rectangle({ 
      'bounds': result.geometry.viewport, 
      'strokeColor': '#0000ff', 
      'strokeOpacity': 1.0, 
      'strokeWeight': 2.0, 
      'fillOpacity': 0.0 
     }); 
     viewportOverlay.setMap(map); 
     google.maps.event.addListener(viewportOverlay, 'click', onClickCallback); 
     document.getElementById('viewportLegend').style.display = 'block'; 

     document.getElementById('p' + resultNum).style.backgroundColor = "#eeeeff"; 
     document.getElementById('matches').scrollTop = 
     document.getElementById('p' + resultNum).offsetTop - 
     document.getElementById('matches').offsetTop; 
     selected = resultNum; 
    } 
    } 
+0

情報ウィンドウを初期化するときに、何らかの理由で、 'size'オプションを指定したようです。奇妙な! –

1

ちょっとしたメモです。 APIのv2に2乗情報ウィンドウが追加されました。私は同じ質問があります。しかし、すぐにv3でも自動的に修正されることがあります。

+0

これは奇妙です。私が 'InfoWindow'を初期化するときに' size'パラメータを指定して以来、彼らはGoogle Mapsのように正方形になっています。今でも、私はその宣言を削除しました。私は何かがキャッシュされているのだろうか、まったく新しい情報ウィンドウデザインを「有効」にするために何かをしたのだろうか? –

関連する問題