地图无法显示Google Maps API V3

时间:2011-05-30 13:02:34

标签: google-maps google-maps-api-3

使用V3 API编写代码。

function initialize ()
{
    if (GBrowserIsCompatible()) 
    { 
        var ch = new GLatLng (0,0);

        var myOptions = {
            zoom:7,
            center: ch,
            mapTypeId: google.maps.MapTypeId.ROADMAP
        }

        map = new google.maps.Map(document.getElementById("map"), myOptions);

        directionsDisplay = new google.maps.DirectionsRenderer(map, document.getElementById("map"));
        directionsDisplay.setMap(map);                  
    }
}

使用V2 API的代码。

function initialize ()
{
     if (GBrowserIsCompatible()) 
     { 
         map = new GMap2 (document.getElementById("map"));
         map.setCenter (new GLatLng(0,0),1 );
     }
}

V2 API代码完美运行,V3 API代码显示任何地图。 我错过了什么意思?

修改 修改V3代码如下,但仍然没有地图:

var chicago = new google.maps.LatLng (0, 0);

var myOptions = {
    zoom:1,
    center: chicago,
    mapTypeId: google.maps.MapTypeId.ROADMAP
}

map = new google.maps.Map(document.getElementById("map"), myOptions);

5 个答案:

答案 0 :(得分:13)

确保您正在加载正确的Google Maps API,您有一个id为map的div标签,并且(为了更好地衡量)您给div一个高度和宽度。 (也许最好将高度和宽度放在样式表中,但为了清楚起见,我将它包含在内联中。)

这是一个包含您的编辑后代码的网页。试试吧。适合我。

<html>
<head>
<title>Google Map test</title>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
</head>
<body>
<div id="map" style="height:500px;width:500px"></div>
<script>
var chicago = new google.maps.LatLng (0, 0);

var myOptions = {
    zoom:1,
    center: chicago,
    mapTypeId: google.maps.MapTypeId.ROADMAP
}

map = new google.maps.Map(document.getElementById("map"), myOptions);
</script>
</body>
</html>

答案 1 :(得分:1)

在V3中,所有名称都已更改。例如,GLatLng现在是google.maps.LatLng。您需要修改代码才能使用新名称。

link to the docs如果您没有

答案 2 :(得分:1)

v3中没有GLatLng,请将其更改为google.maps.LatLng

center: chicago,

答案 3 :(得分:0)

我有相同的症状,我的v2地图不会显示V3。当我查看浏览器控制台日志时,我看到错误:Uncaught ReferencedError:未定义GBrowserIsIncompatible。

根据Google V2 to V3 Migration Guide,不再支持GBrowserIsIncompatible。我还没有找到替代方案,只是删除了与此功能相关的逻辑。这site suggests just removing the function

我发现其他迁移问题已在上面的Google迁移指南链接中解决。

答案 4 :(得分:0)

1-确保您的Google地图API密钥正确无误。

2-它可能未在您的Google地图控制台中启用。

3-错误地启用了位置API而不是地图API。