Tôi đang sử dụng OpenLayers.Control.SelectFeature cho các lựa chọn trên nhiều lớp. Tuy nhiên, khi tôi thêm một lớp bằng setLayer (), các lựa chọn của tôi trên các lớp khác sẽ bị mất.
Bất cứ ai biết làm thế nào để làm việc xung quanh này? Tôi muốn giữ các lựa chọn hiện có của mình trên các lớp khác khi tôi thêm một lớp vào điều khiển SelectFeature.
Đây là một ví dụ: VÍ DỤ CỦA TÔI
Cập nhật:
Tôi biết rằng đây là một phần của API. Nhưng tôi đang tìm kiếm một công việc xung quanh.
/**
* APIMethod: setLayer
* Attach a new layer to the control, overriding any existing layers.
*
* Parameters:
* layers - Array of {<OpenLayers.Layer.Vector>} or a single
* {<OpenLayers.Layer.Vector>}
*/
setLayer: function(layers) {
var isActive = this.active;
this.unselectAll();
this.deactivate();
if(this.layers) {
this.layer.destroy();
this.layers = null;
}
this.initLayer(layers);
this.handlers.feature.layer = this.layer;
if (isActive) {
this.activate();
}
},