地图问题:中心点左上角等

在最近的项目遇到一问题,不管是在leaflet.js中引用google地图还是引用百度地图总会遇到相同的一个问题,经过不断尝试与找资料最后终于解决了。
当地图区域刚开始为display:none,时,地图的中心点会往其他地方偏移,造成地图不能完全在目标区域显示,经过不断地发掘最后得出如下结论:

**Root Cause:当地图区域刚开始为display:none;时,地图默认的中心点为可视区域的中心点,页面左上角开始,从而造成了地图偏移**
**Solution:在地图初始化之前,将隐藏区域显示出来:display:block;
**Ex:`document.getElementById("mapBox").css("display","block");`

2、在地图再次加载显示的时候报错地图已经初始化**

**Root Cause: map对象保存在global Object中**
**Solution:在初始化之前移除map对象**
**Ex:`var map = window.map;
      if(map) {
          map.remove();
      }
      var map = new L.map("mapId");//采用leaflet.js
      window.map = map;`**

另外一个在Bootstrap中的定位,利用z-index:比如要把一个div框的内容在class=col-xs-12的div之上,采用position:absolute;已经会被覆盖,那么采用什么好呢?笔者采用的是position:relative;并同时设置一个较大的z-index;这样就不会被覆盖了。

原文:https://segmentfault.com/a/1190000007014172?_ea=1208623   自己的segmentfault

转载自:https://blog.csdn.net/sinat_23830425/article/details/52806729

You may also like...