为什么这个谷歌地图没有加载?

时间:2011-06-20 16:00:21

标签: javascript google-maps

这是我的代码:

<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=true"></script>     
<script type="text/javascript">
    function load() {
        if (GBrowserIsCompatible()) {
            var map;
            var location = new google.maps.LatLng(46.084989, 11.118851);

            var stylez =
            [
              {
                  featureType: "all",
                  elementType: "all",
                  stylers: [
                  { saturation: -98 }
                ]
              }
            ];

            var mapOptions = {
                zoom: 11,
                center: location,
                mapTypeControlOptions: {
                    mapTypeIds: [google.maps.MapTypeId.ROADMAP, 'myScale']
                }
            };

            map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);
            var mapType = new google.maps.StyledMapType(stylez, { name: "Grayscale" });
            map.mapTypes.set('myScale', mapType);
            map.setMapTypeId('myScale')        
        }
    }

    $(document).ready(function(){
        load();
    });
</script>


<div id="map_canvas" style="width: 100%; height: 700px"></div>

但没有加载。我哪里错了?删除GBrowserIsCompatible()它可以工作,但它无法识别位置。

2 个答案:

答案 0 :(得分:2)

不推荐使用Map API V2。如果删除GBrowserIsCompatible(),它将起作用,地图将以您想要的坐标为中心。

要更好地突出显示您可以使用标记的位置

var marker = new google.maps.Marker({
    position: location,
    map: map,
    title:"My location title"
}); 

答案 1 :(得分:2)

我认为您正在尝试使用Gmaps API V3,并且该版本不支持GBrowserIsCompatible()。要使用此功能,您需要使用API​​ V2。

<script src="http://maps.google.com/mapsfile=api&amp;v=2&amp;key=abcdefg&sensor=true" type="text/javascript"></script>