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