Javascript 打开图层功能悬停更改样式

Javascript 打开图层功能悬停更改样式,javascript,openlayers,openlayers-5,Javascript,Openlayers,Openlayers 5,我正在尝试更改鼠标悬停上多多边形功能的不透明度。我可以在鼠标上方获得该功能并更改样式,但无法设置不透明度从0.3变为0.8的动画 我已经看过文件了,但是找不到任何东西 有什么线索吗?当唯一的更改是样式函数在调用时计算的运行时间时,功能不会自动重新渲染,但调用feature.changed()将触发另一个渲染 var-map=新的ol.map({ 目标:document.getElementById('map'), 视图:新ol.view({ 中心:Lonlat的其他项目([0,50]), 缩放

我正在尝试更改鼠标悬停上多多边形功能的不透明度。我可以在鼠标上方获得该功能并更改样式,但无法设置不透明度从0.3变为0.8的动画

我已经看过文件了,但是找不到任何东西


有什么线索吗?

当唯一的更改是样式函数在调用时计算的运行时间时,功能不会自动重新渲染,但调用feature.changed()将触发另一个渲染

var-map=新的ol.map({
目标:document.getElementById('map'),
视图:新ol.view({
中心:Lonlat的其他项目([0,50]),
缩放:7,
})
});
var layer=新ol.layer.Vector({
来源:新ol.source.Vector({
特点:[
新ol.功能(
ol.geom.Polygon.fromExtent([-1,50,1,51]).transform('EPSG:4326',map.getView().getProjection())
)
]
})
});
var selectedStyle=new ol.style.style({
笔划:新的ol风格笔划({
宽度:2,
颜色:“蓝色”
}),
填充:新的ol.style.fill()
});
var启动;
map.addLayer(层);
var select=新建ol.interaction.select({
条件:ol.events.condition.pointerMove,
风格:功能(特征){
var appead=new Date().getTime()-start;
var不透明度=数学最小值(0.3+经过/10000,0.8);
selectedStyle.getFill().setColor('rgba(255,0,0,'+不透明度+'));
feature.changed();
返回selectedStyle;
}
});
select.on('select',function(){start=new Date().getTime();});
map.addInteraction(选择)


向我们展示您迄今为止所做的尝试。它在您的示例中运行良好,但在我的代码中无法运行。。。我使用webpack,我的功能是多方面的,也许这可能是一个问题,但我不确定。如果我把控制台日志放在“select.on('select')…”中,我会在日志中看到它,但是当我把控制台日志放在select样式函数(“style:function(feature)”)中时,它不会显示在日志中。有什么线索吗?选择样式不会直接覆盖要素上的样式集,它仅在要素使用图层样式时有效。