Javascript L.对照组。层和传单。不透明对照组
我有一张单张地图,上面有覆盖层的选择,还有一个使用的基础层设置。我想有一个不透明度滑块,它与下面的基础层一起工作在选定的层上 查看Javascript L.对照组。层和传单。不透明对照组,javascript,ruby-on-rails,leaflet,Javascript,Ruby On Rails,Leaflet,我有一张单张地图,上面有覆盖层的选择,还有一个使用的基础层设置。我想有一个不透明度滑块,它与下面的基础层一起工作在选定的层上 查看L.control.layers: for (var i = inputs.length - 1; i >= 0; i--) { input = inputs[i]; layer = this._getLayer(input.layerId).layer; hasLayer = this._map.hasLayer(layer); 而层
L.control.layers
:
for (var i = inputs.length - 1; i >= 0; i--) {
input = inputs[i];
layer = this._getLayer(input.layerId).layer;
hasLayer = this._map.hasLayer(layer);
而层
是
layer = NewClass {_url: "http://crores.s3.amazonaws.com/tiles/bkm/{z}/{x}/{y}.png", options: Object, _events: Object, _initHooksCalled: true, _leaflet_id: 98}
或更高版本的util.js
stamp: function (obj) {
/*eslint-disable */
obj._leaflet_id = obj._leaflet_id || ++L.Util.lastId;
return obj._leaflet_id;
和obj
is
obj = NewClass {_url: "http://crores.s3.amazonaws.com/tiles/baistDetail/{z}/{x}/{y}.png", options: Object, _events: Object, _initHooksCalled: true, _leaflet_id: 100}
除非我不确定这是显示控制面板的一部分还是当前活动的覆盖层。在任何情况下,一旦页面完成加载,这些变量都不可用。它们可能是,但我的问题的关键可能是如何访问它们
“不透明度滑块”的示例是为覆盖层硬编码的
map.addControl(opacitySlider);
opacitySlider.setOpacityLayer(overlay);
overlay.setOpacity(0.5);
其中,overlay
是传单层。如何将覆盖设置为选定的覆盖贴图?L.control.layers知道,但我如何将其传递给不透明滑块
我不敢相信这不是一个普遍的需求,但我还没有找到任何东西
传单的相关部分。不透明控制:
L.Control.opacitySlider = L.Control.extend({
options: {
position: 'topright'
},
setOpacityLayer: function (layer) {
opacity_layer = layer;
},
onAdd: function (map) {
var opacity_slider_div = L.DomUtil.create('div', 'opacity_slider_control');
$(opacity_slider_div).slider({
orientation: "vertical",
range: "min",
min: 0,
max: 100,
value: 60,
step: 10,
start: function ( event, ui) {
//When moving the slider, disable panning.
map.dragging.disable();
map.once('mousedown', function (e) {
map.dragging.enable();
});
},
slide: function ( event, ui ) {
var slider_value = ui.value / 100;
opacity_layer.setOpacity(slider_value);
}
});
return opacity_slider_div;
}
});
未实现不透明度滑块的我的网站:。非常好。
我记得查过地理信息系统。。。。这是两年前的答案。我还没试过。反应是找到活跃层