作業中の Web ページの Google Maps API をいじっています。私の問題は、マップが意図したとおりに読み込まれることですが、ページを更新した後にのみ読み込まれます。ページを更新しないと、キャンバスしか表示されません。ページを離れて戻っても問題が残るため、 へのマップの呼び出しに問題があるようinitialize
です。
コード:
<style>
#map_canvas {
width: 670px;
height: 400px;
background-color: #CCC;
}
</style>
<script src="http://maps.googleapis.com/maps/api/js?sensor=false"></script>
<script>
function initialize() {
var myLatLng = new google.maps.LatLng(31.247681, 121.449504);
var map_canvas = document.getElementById('map_canvas');
var map_options = {
center: new google.maps.LatLng(31.248195, 121.447431),
zoom: 16,
mapTypeControl: false,
panControl: false,
zoomControlOptions: {
position: google.maps.ControlPosition.LEFT_CENTER
},
streetViewControl: false,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
var map = new google.maps.Map(map_canvas, map_options);
var contentString =
'<b>Leung Gallery</b>' +
'<p>50 Moganshan Rd. Building 7, Unit 108, Shanghai</p>' +
'<p>上海普陀区莫干山路50号7号楼108室</p>';
var infowindow = new google.maps.InfoWindow({
content: contentString
});
var marker = new google.maps.Marker({
position: myLatLng,
map: map,
});
google.maps.event.trigger(map, 'resize');
google.maps.event.addListener(marker, 'click', function(){
infowindow.open(map,marker);
});
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
以前の質問を閲覧したところ、私の問題と正確に一致するものは見つかりませんでしたが、同様の状況がいくつか見られたgoogle.maps.event.addDomListener(window, 'load', initialize);
ので、それが問題の原因である可能性があると考えています. どんな助けでも大歓迎です。
編集:正しい方向に向けられました。$(document).bind("projectLoadComplete", initialize);
後に追加google.maps.event.addDomListener(window, 'load', initialize);
すると、問題が修正されます。問題は、ナビゲーションの使用時にページが完全にロードされないことでした。この問題は、おそらく Cargo Collective プラットフォームに限定されています。