javascript - OpenLayers 谷歌地图调整大小问题

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

我在我的元素中使用 OpenLayers,但我在调整大小方面遇到了问题。当我打开更大的 - 这是更大的 div- map 时, map 不会导致问题,但是当我在小 div 中打开 map 时, map 不会自行调整大小。

我尝试了一些方法来解决这个问题:


 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

最佳答案

尝试使用这个算法:

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); 

关于javascript - OpenLayers 谷歌地图调整大小问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29428084/

相关文章:

javascript - 使组件在侧边菜单打开时不移动

JavaScript 错误 - 未捕获的语法错误 : Unexpected number

javascript - 如何在 react.js 中使组件在滚动时显示/隐藏

javascript - 在 pdf.js 查看器中呈现时,在 pdf 文档上按文本位置添加 HTML/CSS 覆盖

javascript - 如何使用 HTML 中的 <button> 在两个 CSS 文档之间切换

javascript - for 循环中的问题

javascript - 如何突出显示网站菜单上的事件选项卡?

javascript - 谷歌地图标记图标作为变量

javascript - 在 Ionic 中使用多个标记的谷歌地图自动缩放

javascript - 可以 polygon.setPath();用于完全重新定义多边形?