我在规范http://geojson.org/geojson-spec.html
中找不到任何相关信息是否允许properties
中有FeatureCollection
个密钥?或者它只能用于功能吗?
如果可能,我如何访问openlayers
中的属性?
提前谢谢。
答案 0 :(得分:8)
规范并未明确禁止,但功能集合没有属性。 GeoJSON规范仅提到了FeatureCollection的以下键:
type
- 必须是`FeatureCollection features
- 一系列特色bbox
- 整个要素集的边界框正如我从OpenLayers代码中看到的,properties
仅针对要素实例进行处理,而不是针对要素集合进行处理。
答案 1 :(得分:1)
切换到Leaflet更容易,它接受带有FeatureCollection的GeoJSON。单击对象时,也可以获取Popup中的属性。
但是,Openlayers也可以访问FeatureCollection。 Openlayers的移动(jQuery Mobile)示例演示了访问属性。
http://openlayers.org/dev/examples/mobile-jq.html#mappage
单击黑色图标,您将看到包含这些属性的弹出窗体。
这是移动示例中GeoJSON的一部分。
{
"type": "FeatureCollection",
"features": [
{ "type": "Feature",
"geometry": {"type": "Point","coordinates": [1332700, 7906300]},
"properties": {"Name": "Igor Tihonov","Country":"Sweden", "City":"Gothenburg"}
},
{ "type": "Feature",
"geometry": {"type": "Point","coordinates": [790300, 6573900]},
"properties": {"Name": "Marc Jansen","Country":"Germany", "City":"Bonn"}
},
{ "type": "Feature",
"geometry": {"type": "Point","coordinates": [568600, 6817300]},
"properties": {"Name": "Bart van den Eijnden","Country":"Netherlands", "City":"Utrecht"}
},
{ "type": "Feature",
"geometry": {"type": "Point","coordinates": [-7909900, 5215100]}
}
]
}