谷歌地图显示灰色屏幕而不是地图

GVA*_*Art 2 javascript css google-maps

GoogleMaps显示为灰色框而不是地图.并在Windows上调整大小,它正常工作.
在窗口加载地图上显示如下: 屏幕1

窗口调整大小地图正常工作后: 屏幕2

<div style="width:100%; height:400px; padding:0; margin:0; border:3px solid gainsboro; border-radius:3px;">
    <div id="canvas" style="width:100%; height:100%; padding:0; margin:0;"></div>
 </div>
Run Code Online (Sandbox Code Playgroud)


<script src="https://maps.googleapis.com/maps/api/js?key=MY_API_KEY"></script>
<script>
 var map;
 var latLong;
 $(window).load(function () {
    latLong = new google.maps.LatLng(47.0303105, 28.815481);
     map = new google.maps.Map(document.getElementById('canvas'), {
         center: latLong,
         mapTypeId: google.maps.MapTypeId.ROADMAP,
         zoom: 14
     });
            console.log("Map is ready.")
 });
</script>
Run Code Online (Sandbox Code Playgroud)

PS Map在bootstrap模式div中声明
感谢您的帮助.

小智 6

谷歌人做了特殊事件触发器,我在这种情况下使用它来防止灰色地图:

google.maps.event.trigger(map, 'resize');
Run Code Online (Sandbox Code Playgroud)

您需要'resize'在地图代码完成后调用,甚至需要稍微延迟.尝试在您的线后插入此触发器console.log("Map is ready.")