使用Openlayers

时间:2017-09-22 07:47:55

标签: openlayers openlayers-3

我有一个带有多边形矢量对象的地图。

多边形之间可能存在叠加。也就是说,较大的多边形有时完全高于较小的多边形 使用Openlayers,是否可以显示两个弹出窗口而不是一个弹出窗口(第一个弹出窗口与上面的多边形相关,第二个弹出窗口与底部的多边形相关)?或者一个弹出窗口包含两个多边形的属性?

我找了一下信息,但没有发现很多东西。有那个主题(Display multiple WFS layers with popup),但没有答案。

非常感谢你的帮助!

1 个答案:

答案 0 :(得分:5)

为了获得更好的用户体验,我建议显示包含两个多边形属性的1个弹出窗口。

示例:http://jsfiddle.net/HarolddP/2wfo5acf/3/

在jsfiddle示例中,巴西多边形顶部有一个三角形多边形。两者都有一个属性name。弹出窗口的innerHTML通过循环遍历要素(多边形)并将属性添加到innerHTML来填充。添加一些样式以提高内容的可读性,以便您知道哪个文本属于哪个多边形。

if (features.length > 0) {
    for (var i = 0, ii = features.length; i < ii; ++i) {
        popup.innerHTML = popup.innerHTML + ' ' + features[i].get('name');
    }
}