使用Opacityslider链接Baselayerchange

时间:2016-01-15 14:19:30

标签: leaflet

我正在构建一个显示历史地图的网站,使用基础层在OSM / Google / Bing地图上显示单个图块层。使用Control.Layers从单选按钮列表中选择tilelayer。我想使用Control.Opacity插件来调整基础层的透明度,但是我很难将不透明度控件链接到更改的基础层,并且还需要过滤掉对背景图的任何更改。

有什么建议吗?

1 个答案:

答案 0 :(得分:2)

经过一番努力,我找到了解决方案。

我使用baselayerchange事件来捕获更改,然后根据名称过滤图层(我使用' Map'作为图层名称的前缀)。然后我将对象的图层引用发送到opacityslide。

map.on(' baselayerchange',function(e) {if(e.name.slice(0,3)==" Map"){opacitySlider.setOpacityLayer(e.layer)}});

还有一条反馈:当我尝试从远程服务器引用kml文件时,我收到了“访问控制 - 允许 - 来源”#39; Chrome中的错误消息。我通过安装扩展程序https://chrome.google.com/webstore/detail/allow-control-allow-origi/nlfbmbojpeacfghkpbjhddihlkkiljbi?utm_source=chrome-app-launcher-info-dialog

克服了这一点

我希望能帮助其他人解决这个问题:)