在 Google Maps V3 中获取 GeoJSON 数据层的属性
Getting the properties of a GeoJSON data layer in Google Maps V3
将geoJSON文件作为数据层加载到谷歌地图中时,如何访问数据层本身的属性?
我知道如何访问各个属性,如以下示例中的posts_here
。我希望得到的是图层本身的属性 - 在本例中,maxPosts
.
$.getJSON("http://example.com/posts/grid.json" + location.search, function (data) {
grid = map_canvas.data.addGeoJson(data);
map_canvas.data.setStyle(function(feature) {
return /** @type {google.maps.Data.StyleOptions} */({
strokeWeight: Math.log(feature.getProperty('posts_here')),
});
})
});
我正在加载的grid.json
示例:
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"geometry": {
"type": "Polygon",
"coordinates": [
[
[-58,-35],
[-58,-34],
[-57,-34],
[-57,-35],
[-58,-35]
]
]
},
"properties": {
"posts_here": "177"
}
}
],
"properties": {
"maxPosts": "177"
}
}
API 仅解析 FeatureCollection 的 features
-数组,当您想要访问其他属性时,您必须自己实现它。
基于给定的代码,这并不复杂,因为 geoJson 可以通过 $.getJSON
-回调中的data
作为对象访问,您可以简单地通过以下方式访问该属性
data.properties.maxPosts
我相信
你应该能够使用getFeatureById(id:number|string)来访问你从geoJSON添加的信息。
相关文章:
- 序列化数据属性中对象的最可靠方法
- jQuery最近父级的数据属性选择器
- delete在Object上效率低下,但在DOM Element's的数据属性,与null out相比
- 数据属性仅在切换设备模式下工作
- 函数jquery.html()不提供数据属性集值
- 在数据属性上进行下拉自动选择
- JavaScript-获取数据属性的值返回未定义的值
- 如何替换数据属性中的特定字符串单词
- 使用数据属性将HTML数据复制到另一个元素
- 带有CSS的数据属性就没那么有用了
- 查找所有TD标签并读取其数据属性
- 使用jQuery获取第N个元素的数据属性值
- 使用自定义数据属性或将数据绑定到处理程序来处理事件
- 数据属性有没有更干净的方法
- 是否可以使用CSS分配数据属性
- 根据jquery数据属性值进行查询
- 使用jQuery在select选项上设置HTML数据属性
- 使用Javascript而不是html数据属性配置Parsley
- 语义UI下拉选项数据属性
- 无法将 json 数据添加到 pyjade 中的数据属性