两个或更多功能的事件管理
Event management for two or more features
如何使用 Openlayers 3 事件管理进行编码。
我有两个功能要管理,但我还没有找到如何使用 ol.interaction.Select。
但也许这不是正确的方法。
Openlayers2 示例
select = new OpenLayers.Control.SelectFeature([layer_1, layer_2]);
layer_1.events.on({"featureselected": do something...... });
layer_2.events.on({"featureselected": do something...... });
map.addControl(select);
select.activate();
使用 OL 3,您可以像这样向 ol.interaction.Select
构造函数添加 array
层:
var selectInteraction = new ol.interaction.Select({
layers: [vectorLayer1]
});
var selectInteraction2 = new ol.interaction.Select({
layers: [vectorLayer2]
});
map.addInteraction(selectInteraction);
map.addInteraction(selectInteraction2);
// do the same with other interaction
selectInteraction.on('select', function(evt) {
if(evt.selected.length > 0){
// do something
}
});
如何使用 Openlayers 3 事件管理进行编码。
我有两个功能要管理,但我还没有找到如何使用 ol.interaction.Select。
但也许这不是正确的方法。
Openlayers2 示例
select = new OpenLayers.Control.SelectFeature([layer_1, layer_2]);
layer_1.events.on({"featureselected": do something...... });
layer_2.events.on({"featureselected": do something...... });
map.addControl(select);
select.activate();
使用 OL 3,您可以像这样向 ol.interaction.Select
构造函数添加 array
层:
var selectInteraction = new ol.interaction.Select({
layers: [vectorLayer1]
});
var selectInteraction2 = new ol.interaction.Select({
layers: [vectorLayer2]
});
map.addInteraction(selectInteraction);
map.addInteraction(selectInteraction2);
// do the same with other interaction
selectInteraction.on('select', function(evt) {
if(evt.selected.length > 0){
// do something
}
});