GeoJson层中的标记
Marker in the GeoJson Layer
本文关键字:GeoJson 更新时间:2023-09-26
使用Data API导入GeoJson数据时,gmaps将自动为每个特征生成点,并将它们放置在地图上的适当位置。
不幸的是,当收听数据事件(如点击)时,似乎没有方法访问功能对应的标记,或者这个功能不是标记?
这将有助于在标记位置上轻松显示信息窗口。我可以用JS获取geojson,并在循环中添加每个点作为标记。但我认为这是一个肮脏的解决方案。
有办法做到这一点吗?
已创建的形状(例如标记)不可访问,但可以通过特征的几何图形访问特征的属性(例如点的位置)。
样品:
var infoWindow=new google.maps.InfoWindow();
//add lick-listener
map.data.addListener('click', function(event) {
//geometry of the feature
var geo=event.feature.getGeometry();
//when it's a point
if(geo.getType()==='Point'){
//create the anchor where the infoWindow will be opened
var anchor=new google.maps.MVCObject();
anchor.setValues({//position of the point
position:geo.get(),
//offset (0,-height of the marker)
anchorPoint:new google.maps.Point(0,-40)});
//some content
infoWindow.setContent('marker@'+geo.get().toUrlValue());
//open the infowindow
infoWindow.open(this.getMap(),anchor)
}
});
相关文章:
- 如何使用传单pip插件与纯GeoJSON数据
- 使用AJAX调用将GeoJSON数据拉入传单
- Mapbox JS,来自URL的GeoJSON featureCollection对象只添加了一个标记
- 使用D3.js和GeoJson在地图上的某些坐标上设置一个小图像
- 从传单数据到GeoJSON的多边形
- 用于在ng映射中加载GeoJSON的回调
- 使用D3.js和GeoJson在地图上显示States上的一些文本
- JS,使用geojson在googleapi中将标记显示为字符串
- 在传单上绘制GeoJSON
- 使用传单和geoJson监控对象
- 更新GeoJSON元素
- 基于唯一ID合并geojson
- Mapbox,无法在jquery回调中设置GeoJSON
- 如何避免传单javascript库中多个MultiPolygon GeoJSON层重叠
- d3.js,是否可以将超链接附加到GeoJSON文件
- 将Big GeoJSON转换为topoJSON
- 谷歌地图不正确的GeoJSON渲染
- 从本地 geojson 文件地图框/传单创建 var
- 传单实时GeoJSON动态标记颜色更改
- 将GeoJson字符串格式设置为虚线