背景:
最近Web端项目中使用到了百度地图,地图上用鼠标滚轮进行缩放时,缩放的基点不是在鼠标所在位置的问题;
在网上查找这个问题的解决办法,其他博主都说是因为页面上的滚动条造成的,需要设置:
$(window).scrollTop(0);
但是我的地图是在弹窗中使用的,并没有滚动条,上述的方法没法解决。
分析问题:
观察发现加载百度地图的弹窗,是使用定位让弹窗居中的,当定位的top和left设置成0(即:弹窗定位到左上角)之后,百度地图的滚轮缩放的基点就会正常。
解决办法:
重写了弹窗的样式,去掉弹窗的定位,使用flex弹性布局使弹窗居中,完成之后弹窗还是居中的,鼠标滚轮缩放地图基点也不会偏移。
结语:
这个解决办法也会出现一个问题,就是弹窗没法再进行拖拽了;
若大家有更好的解决方法,欢迎分享和评论,谢谢大家。