我的页面上有一个谷歌地图,我自己建立了一个可以随意显示和隐藏的搜索窗格.它涵盖了像一边说地图的200像素.问题在于,当我调整地图大小时,窗格重叠的区域是未渲染的,即地图因某些原因无法渲染.
看看这个链接
在Box类型中,假设OMDB是机场的icao代码,然后按回车键.
显示结果,您将看到窗格.现在点击全屏链接,然后单击机场选项卡以使面板消失 - 您现在看到地图的一部分根本没有渲染...我必须拖动地图并且仅部分渲染那个地区.我该如何解决?
仅供参考我在Windows XP上运行Google Chrome,Firefox和IE8.有没有办法强制完成地图的渲染?这是一个非常不稳定的问题,它可能与我的代码有关,还是主机问题?或谷歌只是不喜欢我?:(
编辑:看到旁边的丑陋补丁.它的未渲染区域也应该渲染地图.没有任何放大和平移有助于清除这个:(
我在使用模式框中的v3 API嵌入Google Map时遇到问题.
显示模态时,灰色框出现在地图画布中.调整浏览器窗口大小,调出Web Inspector等会使所有地图图块都可见,即它"强制重新渲染"地图.
map元素的父元素(section#map-modal
参见下面的代码)display: none
在页面加载时设置了CSS.display: block
单击show按钮时,JS模态代码会自动设置.如果我暂时display: none
从模态元素中删除,则地图在页面刷新时正确呈现.谷歌地图喜欢隐藏的父元素吗?
我正在使用Twitter的Bootstrap模态jQuery插件,并使用CSS控制模态本身.它是固定的,有像素宽度等.没什么不寻常的.
我当然用谷歌搜索解决方案,许多人指出触发resize
事件的Google API方法:
google.maps.event.trigger(map, 'resize');
Run Code Online (Sandbox Code Playgroud)
我确实这样做了,但无济于事.
相关代码:https://gist.github.com/1591488
如你所见,我在第39行触发事件.
(按侧边栏底部的查看大图按钮).
文件:
fagerhult.js
fagerhult.map.js
bootstrap-modal.js
master.css
我会非常感激任何帮助或额外的一双眼睛,因为我很快就会生气.