【发布时间】:2017-07-27 14:06:34
【问题描述】:
我使用 OpenLayers 显示地图,使用 AdminLte 显示界面。
我的问题:当折叠给定页面上的主要左侧边栏时,所有框及其包含的内容都会改变大小(我真的不知道如何),因此地图也会变得更大。问题是,当它发生时,地图上显示的所有要素显然会改变位置,不再是它们应该在的位置。
我想要什么: 在侧边栏折叠后重新绘制地图。
有什么建议吗?
我试过了:
$('.navbar-collapse').on('shown.bs.collapse', function() {
map.updateSize();
});
和:
$('.sidebar').on('shown.bs.collapse', function() {
map.updateSize();
});
但无济于事......
编辑:我的问题与此类似:OpenLayers: How to re-align mouse coordinates and vector layers after fluid css rendering of map div 但他的解决方案对我不起作用:)
编辑 2: 澄清一下:我认为解决我的问题的方法是在侧边栏完成折叠时调用 map.updateSize() 方法。问题是我不知道如何捕捉侧边栏完成折叠/展开的时刻!
【问题讨论】:
标签: javascript css gis openlayers adminlte