OpenLayers FramedCloud Autosizing

时间:2012-09-26 15:36:42

标签: javascript popup openlayers

根据文档,我应该能够通过在FramedCloud构造函数中声明OpenLayers.Size对象来配置我的OpenLayers弹出窗口的大小:

this.popup = new OpenLayers.Popup.FramedCloud('featurePopup',
    this.options.feature.geometry.getBounds().getCenterLonLat(),
    new OpenLayers.Size(80, 60),
    html,
    null, true, this.onPopupClose
);
map.addPopup(this.popup, true);

目前,无论我在构造函数中使用什么尺寸,渲染的弹出窗口都是自动调整的。

enter image description here

我已经尝试手动将FramedCloud的自动调整属性设置为false,并手动调整弹出窗口的CSS样式而不会达到我需要的结果。

我在OpenLayers 2.11问题列表中检查并发现了一些similar issues,但我还没有找到解决方法。有什么想法吗?

3 个答案:

答案 0 :(得分:1)

            this.popup.autoSize = false;

在addPopup()之前添加此指令。

答案 1 :(得分:0)

不确定这对其他人有多大帮助,但是对于这个特定的例子,滚动条是由对话框底部的浮动div渲染的。通过更新css,我可以绘制干净的自动弹出窗口,而无需计算自定义尺寸。

答案 2 :(得分:-1)

我遇到了同样的问题,我找到的唯一解决方法是使用例如AnchoredBubble。