ฉันใช้OpenLayers.Control.SelectFeatureเพื่อเลือกหลายเลเยอร์ อย่างไรก็ตามเมื่อฉันเพิ่มเลเยอร์โดยใช้ setLayer () การเลือกเลเยอร์อื่น ๆ ของฉันจะหายไป
ใครรู้วิธีแก้ปัญหานี้? ฉันต้องการคงการเลือกที่มีอยู่ของฉันไว้ในเลเยอร์อื่น ๆ เมื่อฉันเพิ่มเลเยอร์ในตัวควบคุม SelectFeature
นี่คือตัวอย่าง: ตัวอย่างของฉัน
ปรับปรุง:
ฉันรู้ว่านี่เป็นส่วนหนึ่งของ API แต่ฉันกำลังมองหางาน
/**
* 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();
}
},