谷歌地图Api:地图变灰第一次加载和灰色区域无法加载

时间:2017-06-10 15:52:21

标签: javascript jquery html css google-maps

谷歌地图有一个非常奇怪的问题。控制台上没有错误,但每次加载地图时,它都只显示灰色框,并显示所有工具。

显示了右下角的工具,但没有图标(图标没有显示,只有白色框)。

如果我将地图向左移动,则所有左侧区域都会很好地加载,但如果我将其向右移动,则向右移动到初始位置,因此,灰色区域仍然是灰色的,地图不会渲染初始位置区域和右侧。

如果缩小地图,我可以看到有一条从北极到南极的直线边界,它们分割得很好(从我的初始位置左侧)和右侧(我的初始位置和到它的权利)。

这是一个错误吗?如何解决这个问题?

我试图将“调整大小”事件调用到地图中,但问题仍然存在。

以下是代码:

剃刀:

var googleMapSrc = @"https://maps.googleapis.com/maps/api/js?key=" + @ETrackerUser.ETrackerUserConfig._MapApiKey.Trim() + @"&callback=initMap";

Html:

<div id="mapContainer" style="width:100%; height:100%">
</div>

脚本:

<script type="text/javascript">
    var locations = JSON.parse($('#CoordinatesModel').val());

    var geocoder;
    var map;

    function initMap() {

        setTimeout(function () {
            var html = '<div id="map" style="height:600px;"></div>';
            $('#mapContainer').html(html);

            var map = new google.maps.Map(document.getElementById('map'), {
                zoom: 10,
                center: {lat: -25.363, lng: 131.044},
                mapTypeId: google.maps.MapTypeId.ROADMAP
            });

            google.maps.event.addListener(map, "idle", function () {
                google.maps.event.trigger(map, 'resize');
            });

        }, 2000);
        setTimeout(function () {
            google.maps.event.trigger(map, 'resize');
            map.setZoom(map.getZoom());
        }, 5000);
    }
</script>

<script async defer src="@googleMapSrc"></script>

图片:

初始加载: Initial Load

移动到初始加载的左侧:

Move left

缩小:Zoomed Out

注意:

我甚至尝试使用simple map example code,但仍会产生相同的错误。

发现问题

这非常非常愚蠢。当我使用Internet Explorer时,一切都很好。目前我的默认浏览器是谷歌浏览器。谷歌浏览器搞砸了这张谷歌地图(太奇怪了,太愚蠢了)。

我不知道这是一个错误还是我的chrome配置有问题。

如果有人知道这个问题,请帮助我。

现在我将使用Internet Explorer。

1 个答案:

答案 0 :(得分:0)

好吧我的网站css有问题。 img只应该为页面max-width: none !important