【问题标题】:Display multiple pop-ups when superposition of polygons with Openlayers多边形与 Openlayers 叠加时显示多个弹出窗口
【发布时间】:2017-09-22 07:47:54
【问题描述】:
我有一张带有多边形矢量对象的地图。
多边形之间可以存在叠加。也就是说,有时较大的多边形完全位于较小的多边形之上。
使用 Openlayers,是否可以显示两个弹出窗口而不是仅显示一个(第一个弹出窗口与上面的多边形相关,第二个与底部的多边形相关)?还是一个包含两个多边形属性的弹出窗口?
我查找了相关信息,但没有找到很多相关信息。有那个主题(Display multiple WFS layers with popup)但没有答案。
非常感谢您的帮助!
【问题讨论】:
标签:
openlayers
openlayers-3
【解决方案1】:
为了更好的用户体验,我建议显示 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');
}
}