-1

我编写了代码,使用从数据库中获取的相关信息(地址、纬度、经度、描述等)在谷歌地图上动态显示多个标记。问题是谷歌地图在 IE 中运行良好,但在 FF 中没有显示。

这是显示谷歌地图和标记的代码

<style type="text/css">
  html { height: 100% }
  body { height: 100%; margin: 0; padding: 0 }
  #dvMap { height: 100%; }
</style>

<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?key=myApiKey&sensor=false" > 
</script>


<script type="text/javascript">
    window.onload=function(){                  
        var mapOptions={                 
            center:new google.maps.LatLng(markers[0].lat,markers[0].lng),
            zoom:8,
            mapTypeId:google.maps.MapTypeId.ROADMAP        
        };
        var infoWindow=new google.maps.InfoWindow();
        var map=new google.maps.Map(document.getElementById("dvMap"),mapOptions);
        for(i=0;i<markers.length;i++){                
            var data=markers[i];
            var latlng=new google.maps.LatLng(data.lat,data.lng);
            var marker=new google.maps.Marker({
                position:latlng,
                map:map,
                title:data.title             
            });
            (function(marker,data){
                google.maps.event.addListener(marker,"click",function(e){
                    infoWindow.setContent(data.description);
                    infoWindow.open(map,marker);
                });                
            })(marker,data);
        } 
    }        
</script>

这是我的 aspx 页面

<form id="form1" runat="server">
    <div id="dvMap" style="width:50%; height:50%;"></div>     
    <asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />
</form>
4

1 回答 1

0

让我们首先google.maps.event.trigger(map, 'resize');在 onload 函数的末尾添加

另请注意,您的内联样式width:50%; height:50%将覆盖您<style>在页面顶部指定的样式。

据我了解,您正在尝试创建全屏地图,如果我错了,请纠正我

于 2013-03-09T12:24:05.877 回答