小编Tam*_*aig的帖子

在通过loadGeoJson()加载的功能上创建Infowindows

如果这是基本的,我道歉,但我的javascript知识非常有限.

我正在创建一个地图,使用ogr2​​ogr将我在ArcGIS中创建的GeoJSON数据重新格式化为GeoJSON.我已经从地图加载并显示了我的GeoJSON文件中的点标记,我甚至还有一个styleFeature()功能,可以根据属性在功能上设置样式.

我遇到的问题是在点击点功能时尝试弹出信息窗口.

我已成功使用代码设置事件侦听器并使用单击的功能更新div的内容:

map.data.loadGeoJson('http://www.myurl.com/file.json');

map.data.setStyle(styleFeature);

map.data.addListener('click', function(event) {
    var myHTML = event.feature.getProperty('Description');
    document.getElementById('info-box').innerHTML = myHTML;
});
Run Code Online (Sandbox Code Playgroud)

我想要做的是有一个事件发起像这样的infowindow,这不起作用:

map.data.loadGeoJson('http://www.myurl.com/file.json');

map.data.setStyle(styleFeature);

map.data.addListener('click', function(event) {
    var myHTML = event.feature.getProperty('Description');
    var infowindow = new google.maps.InfoWindow({content: myHTML});
});
Run Code Online (Sandbox Code Playgroud)

我的数据集由超过一千个点组成,所以硬编码信息不起作用,我没有看到任何示例显示如何创建一个infowindows数组,因为功能在setStyle()任一个调用的函数中循环.

我知道这与我对缺乏理解范围,事件和对象数组有关,但我只是碰壁.

任何帮助,将不胜感激.

javascript geojson infowindow google-maps-api-3

11
推荐指数
1
解决办法
1万
查看次数