【发布时间】:2018-05-03 06:46:00
【问题描述】:
我正在尝试在示例popupinfo 的帮助下使用 openlayers 3 获取地图点击上的特征信息 javascript
var mmi = new ol.layer.Tile({
source: new ol.source.OSM()
});
var one = new ol.layer.Image({
source: new ol.source.ImageWMS({
url: 'http://localhost:8080/geoserver/wms',
params: {'LAYERS': 'cite:abc'},
format: new ol.format.GeoJSON(),
ratio: 1,
serverType: 'geoserver'
})
});
var map = new ol.Map({
layers: [mmi,one],
target: 'map',
view: new ol.View({
center: ol.proj.fromLonLat([73.6608, 29.8820]),
zoom: 8
})
});
map.on('click', function(evt) {
var feature = map.forEachFeatureAtPixel(evt.pixel, function(feature, one)
{
return feature;
})
});
<link href="https://openlayers.org/en/v4.6.4/css/ol.css" rel="stylesheet"/>
<script src="https://openlayers.org/en/v4.6.4/build/ol-debug.js"></script>
<div id="map" class="map"></div>
<div id="map" class="information"></div>
在我的地图点击事件中,特征值什么都没有。如何在点击它时获取特征值。
【问题讨论】:
-
请先修复编译错误,太多了!您的格式也已关闭,可能是导致某些错误的原因。
overlay未定义,map的 props 相乘,hdms未定义,++i应为i++。displayFeatureInfo在单击侦听器中定义,过早结束并且永远不会被调用。content未定义,coordinate未定义 -
我没有收到任何编译错误。map.forEachFeatureAtPixel(evt, function(feature, one)
-
我将您的代码转储转换为截断的可执行文件。查看并修复错误。
标签: javascript openlayers openlayers-3 geoserver gwt-openlayers