我正在使用Google Maps API v3 for javascript。在某些情况下,我只看到左上角的地图。要查看,请尝试转到http://telofast.com/telofun/#stationRanking,然后按其中一行。
答案 0 :(得分:17)
当调整浏览器大小时,地图有效,因为正确设置了宽度和高度并且引发了resize事件。
解决问题的最快方法是在显示它的javascript之后调用resize方法(下面)。也许在showDiv('mapDiv');
之后的showScoresAndCenterOn
?
google.maps.event.trigger(map, 'resize');
答案 1 :(得分:6)
要解决此问题,您需要
调整地图大小
google.maps.event.trigger(map, 'resize');
重新输入地图,其中myCenter
是你的lat,lng点。
map.setCenter(myCenter);
这有点像黑客但它有效。
答案 2 :(得分:3)
我有同样的问题让我困扰了几天,今天我找到了解决方案并且它有效!
在我的情况下,我使用标签来查看页面的不同部分。这不是jquery ui,我做到了。在一个标签中,我放置了地图的代码。当我点击地图选项卡时,它向我显示了地图但是已经破坏了地图。最后,我找出了问题和解决方案。
为了隐藏我的元素,我使用了display:none
属性any来揭示我使用了display:block
属性。当谷歌地图试图获取容器块的维度时,它找到0 x 0
因为它被隐藏了。所以地图显示为破碎。
然后我将地图选项卡的css更改为position:absolute;left:-99999px;
而不是display:none
,并使用jquery
添加类,并在必要时使用上述属性删除。然后代码开始工作了!我的地图已经修好了。
答案 3 :(得分:0)
将containar #Div宽度设置为100%.. 这对我有用。
答案 4 :(得分:-1)
非常感谢,我转向同样的问题。确实当你把display:none放在一边时,这会在试图查看谷歌地图时出现问题。我删除了显示:none并将其更改为屏幕外的位置,单击按钮时此位置会在屏幕中的某个位置发生变化,我的地图显示正确