我正在使用传单和分层选择器。
我的问题是现在我像这样定义我的层:
var mymaps = {
"Overlay 1": new L.geoJson(...)
"Overlay 2": new L.geoJson(...)
}
L.control.layers(mymaps).addTo(mymap);我想要的是能够:
var mymaps = {
"Overlay 1": new L.geoJson(...)
"Overlay 2": new L.geoJson(...)
"Overlay 3": function() {
console.log("Overlay 3 Selected");
// call some other methods to pull in data and affect map
}
}我该怎么做?有可能吗?
发布于 2017-08-21 22:42:59
使用L.Control.Layers时,baselayerchange、overlayadd和overlayremove事件会触发您的地图实例。在您的例子中,您需要baselayerchange事件:
当通过层控件更改基本层时触发。
参考资料:http://leafletjs.com/reference-1.2.0.html#map-baselayerchange
map.on('baselayerchange', function (e) {
console.log(e.name); // The name of the layer that was added or removed.
console.log(e.layer); // The layer that was added or removed.
});https://stackoverflow.com/questions/45804417
复制相似问题