我使用leaftlet在网页上创建地图。
在地图的左侧是一个滑出的面板。
当面板滑出时,地图会调整大小以填充页面上的剩余空间。
当面板向左滑动时,调整大小,中心点向左移动。
理想情况下,地图的中心点应保留在相对中心。
Dodgy ASCII表示: ('。'代表地图的初始中心点。)
Panel closed: [][ . ]
Panel open (current): [ ][ . ]
Panel open (desired): [ ][ . ]
这里有一个jsFiddle来重现这个问题。
答案 0 :(得分:3)
我在传单地图尺寸更改后调用 解决了这个问题$(window).resize()
更新:看起来您需要拨打map.invalidateSize()
而不是
更新了小提琴http://jsfiddle.net/YwbLg/11/(动画并不漂亮)
答案 1 :(得分:0)
看看你的JSFiddle,如果你在保存地图的DIV上检查元素(Chrome上的右键单击选项)#map-containerDiv,你会看到当选项DIV,#mapOptions,向右滑动时,地图div实际上是向右推,没有调整大小。
换句话说,地图的中心点实际上并没有改变 地图div只是向右滑动,div的右侧变为隐藏。