2017-06-02 9 views
5

क्या नियंत्रण में सभी चयनित परतों का चयन करने का कोई तरीका है। लीफलेट एपीआई वाले प्लेयर? मैं इस तरह $ jQuery की मदद से यह कर सकते हैं ('पत्रक नियंत्रण-परतों-चयनकर्ता:। जाँच की') लेकिन शायद वहाँ एक एपीआई है? enter image description here धन्यवादनियंत्रण परतों में चयनित परतों को कैसे प्राप्त करें?

उत्तर

4

वहाँ उस के लिए कोई एपीआई है, लेकिन आप आसानी से एक अपने आप बना सकते हैं:

// Add method to layer control class 
L.Control.Layers.include({ 
    getActiveOverlays: function() { 

     // Create array for holding active layers 
     var active = []; 

     // Iterate all layers in control 
     this._layers.forEach(function (obj) { 

      // Check if it's an overlay and added to the map 
      if (obj.overlay && this._map.hasLayer(obj.layer)) { 

       // Push layer to active array 
       active.push(obj.layer); 
      } 
     }); 

     // Return array 
     return active; 
    } 
}); 

var control = new L.Control.Layers(...), 
    active = control.getActiveOverlays(); 
संबंधित मुद्दे