OpenLayers谷歌地图调整大小问题

时间:2015-04-03 07:31:11

标签: javascript css google-maps google-maps-api-3 openlayers

我在我的项目中使用OpenLayers,但是我在调​​整大小时遇到​​了问题。当我打开我的更大 - 这是更大的div-map时,地图不会引起问题,但是当我在小div中打开地图时,地图不会自行调整大小。

我尝试了几件事来解决这个问题:


 window.onresize = function()
        {
          setTimeout( function() { map.updateSize();}, 200);
        }

$(window).trigger('resize');


  function resize() {
      var div = $('#map');
      div.height(
        Math.max( div.height() + ($(window).height() - $('body').height()), 300 )
      );
      map.updateSize();
    }

我也尝试更新库文件。

http://trac.osgeo.org/openlayers/attachment/ticket/2828/openlayers-2828.patch

1 个答案:

答案 0 :(得分:0)

尝试使用此算法:

function reduce() { 
var mapDiv = document.getElementById("map"); 
console.log("Current size: "+mapDiv.style.width+ " / "+mapDiv.style.height); 
mapDiv.style.width = mapDiv.clientWidth - 10 + "px"; 
mapDiv.style.height = mapDiv.clientHeight - 10 + "px"; 
console.log("New size: "+mapDiv.style.width+ " / "+mapDiv.style.height);