谷歌地图页面加载,但没有显示地图

时间:2011-04-11 15:10:21

标签: jquery google-maps load

    <script type="text/javascript"> 
    $(document).ready(function() {
    $('#tab_menu a').click(function(){
    $('html, body').animate({scrollTop: '201px'}, 400);
    $("#ajax").empty().html('<div style="text-align:center;width:950px;height:100px;background:url(/images/white.gif) repeat-y;"><table align="center" border="0"><tr><td width="950" align="center"><img src=/images/loading.gif align=absmiddle /><br/>Loading map...</td></tr></table></div>');
    $('#ajax').slideDown('slow', function() {
    $('#ajax').load('/inmap.php?=<?=$h?>');
            });
            });
        });

</script>

当单独调用inmap.php时,它会使地图​​变好。但是使用上面的代码,地图不显示。

我可以毫无问题地调用我想要的任何其他页面。代码有什么问题? 注意:删除<?=$h?>时仍无法显示。

1 个答案:

答案 0 :(得分:0)

$('#ajax')生成的网址.load('/ inmap.php?=');将是/inmap.php?=<?=$h?>。我想你要做的是以下几点:

$('#ajax').load('/inmap.php?=' + h);

然而,没有名为h的变量。所以删除那部分可能就是你应该做的。

我很确定问题是Google Maps JavaScript API应该加载到正在加载地图的文件中,您不能注入<script> - 标记并期望包含外部JavaScript文件,因为它不会。我建议使用iFrame。然后,您将得到一个类似于以下内容的代码:

$(document).ready(function(){
    $("#tab_menu a").click(function(){

        $("#ajax").html('<iframe name="google_maps_iframe" height="100" width="950" src="inmap.php"></iframe>');
    });
});