【发布时间】:2021-11-24 17:53:39
【问题描述】:
我想从几个层获取信息,我使用的是forEachFeatureAtPixel方法,但是当我得到结果时我只得到第一个结果,当在浏览器响应时,我看到它返回的JSON有更多的结果。当我使用 getFeaturesAtPixel 方法时,我通过 FOR 循环获得了所有结果。但是现在我不知道如何得到所有的结果。
map.on("click", function (evt) {
var result = map.forEachFeatureAtPixel(evt.pixel, function (feature, layer) {
return { feature, layer };
});
if (result) {
var feature = result.feature;
var layer = result.layer;
if (layer === vec01) {
contINFO.innerHTML = '<b>One name:' + feature.get('one_name') + '<b>'
}else if (layer === vec02) {
contINFO.innerHTML = '<b>Other name:' + feature.get('other_name') + '</b><b>Percent: ' + feature.get('percent') + '</b>'
}
}
});
【问题讨论】:
标签: javascript openlayers