OpenLayers setOpacity 在 selectFeature 中出现多个图层时失败
OpenLayers setOpacity fails with multiple layers in selectFeature
Using OpenLayers 2.13.我有一个包含 2 个矢量图层的地图,以及一个允许调整图层不透明度的 JQuery 滑块。
如果我设置了一个选择器来包含两个图层(用于突出显示和弹出窗口),则用于调整不透明度的 JQuery 滑块不起作用(layername.setOpacity(x) 无法设置图层的不透明度)。如果只有一个图层参与选择器,则设置不透明度工作正常。两个图层使用相同的样式映射。
$("#slider-id").slider({
value: 70,
min: 10,
max: 100,
step: 10,
slide: function(e, ui) {
layer1.setOpacity(ui.value / 100);
layer2.setOpacity(ui.value / 100);
} });
此选择器允许为两个图层设置不透明度:
var selector = new OpenLayers.Control.SelectFeature(layer1,{
hover:false
});
但是这个选择器不会(setOpacity()无论如何都会失败):
var selector = new OpenLayers.Control.SelectFeature([layer1, layer2],{
hover:false
});
选择器已添加并激活。
map.addControl(selector);
selector.handlers.feature.stopDown = false; //allow dragging on map
selector.activate();
有没有办法让多个图层参与选择器,同时允许更改不透明度?
回答您自己的问题可能是一种不好的形式,但我找到了一种解决方法,并将其发布在这里给其他有此问题的人。
在更改不透明度之前停用选择器。
$("#slider-id").slider({
value: 70,
min: 10,
max: 100,
step: 10,
slide: function(e, ui) {
selector.deactivate();
layer1.setOpacity(ui.value / 100);
layer2.setOpacity(ui.value / 100);
selector.activate();
}
相关文章:
- 更改图层中单个矢量特征的图标
- 谷歌地图热图图层点半径
- 谷歌地图-更改图层图标大小
- 如何通过ID获取图层对象
- CS5隐藏图层的速度非常慢
- 开放图层导出为 KML 并保留我的地图样式
- 传单问题:使折线的图层组不可单击
- 将图层添加到另一个图层
- 图层删除(图像);在 Kinetic.js 中不起作用
- HTML5 Canvas 的初学者,使用图层
- 如何在“控制缩放”下的“打开图层”上添加一些图像
- 无法让 jQuery floatThead 处理嵌入在选项卡式图层中的表
- 如何在开放层 3 中设置矢量图层选择的样式
- 添加支持异步重新加载的 Web 图层
- 3d图层滑块Wordpress插件:编辑3d颜色
- 在jQuery中移动DOM元素(图层滑块)
- 如何用程序更改传单中的图层
- 从智能对象和图层替换Photoshop中的关键字
- OpenLayers setOpacity 在 selectFeature 中出现多个图层时失败
- 用于从 GeoServer 检索图层名称的 AJAX 回调失败,并显示断言错误