「単一タイル」の状態は、通常、非表示のキャンバスで Google マップを初期化することによって発生します。これは、ここに当てはまるようです。
マップを最初は非表示にしてサイズを変更したくない場合、次の 2 つの主なオプションがあります。
私は試したことはありませんが、次の可能性も考えられると思います。
- 「目に見える」オフスクリーン キャンバスでマップを初期化し、最初のビューで画面上に再配置します。その後、キャンバスは従来どおり非表示/表示することができます。
編集
はい、マップは画面外で初期化してから画面上に移動できます。
HTML:
<div id="off_screen">
<div class="googleMapContainer" id="map-canvas"></div>
</div>
...
<div class="tab">
<h3>Headline 3</h3>
<div id="map-placeholder"></div>
</div>
CSS:
#off_screen {
position: absolute;
left: -1000px;
top: -1000px;
}
Javascript:
var $mapCanvas = $("#map-canvas");
map = new google.maps.Map($mapCanvas.get(0), myOptions);
var listenerHandle = google.maps.event.addListener(map, 'idle', function() {
$mapCanvas.appendTo($("#map-placeholder"));
google.maps.event.removeListener(listenerHandle);
});
更新されたフィドルを参照してください