さて、私はしばらくこれに取り組んできましたが、まだ応答がありません..
私がやろうとしているのは、リフレッシュメニューのないajaxでgooglemapをロードすることです。これがすべてのメニュー ページをロードするメイン ページです。main.php を呼び出します。
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?key=API_KEY&sensor=false">
</script>
<ul id="nav">
<li><a href="page_main">Main</a></li>
<li><a href="page_weather">Weather</a></li>
</ul>
<div id="content"></div>
<script>
$(document).ready(function(){
//initial
$('#content').load('menu/page_main.php');
//handle menu clicks
$('ul#nav li a').click(function() {
var page = $(this).attr('href');
$('#content').load('menu/' + page + '.php');
return false;
});
});
</script>
これが地図のあるページです。page_weather.php を呼び出しましょう。
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?key=API_KEY&sensor=false">
</script>
<script type="text/javascript">
function initialize() {
var mapOptions = {
center: new google.maps.LatLng(-15.869167, -47.920834),
zoom: 3,
disableDefaultUI: true,
mapTypeId: google.maps.MapTypeId.HYBRID
};
var map = new google.maps.Map(document.getElementById("map_canvas"),mapOptions);
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
<h1>Principal</h1>
</br>
</br>
<body onLoad="initialize()">
<div id="map_canvas" style="width:800; height:400;"></div>
page_weather.php がブラウザーに直接読み込まれると、マップは正しく読み込まれますが、ページが ajax のリフレッシュ メニューなしで読み込まれると、800x400 の白いボックスしか表示されません。
どうすればこれを修正できますか?
すでに試しました: