我在文档中看到 icon-opacity 支持功能状态, https://docs.mapbox.com/mapbox-gl-js/style-spec/layers/#paint-symbol-icon-opacity
因此,当用户将鼠标悬停在图标上时,我使用此代码来更改不透明度:
map.addLayer({
type: 'symbol',
layout: {
'icon-image': 'point',
...
},
paint: {
'icon-opacity':
['case', ['boolean', ['feature-state','hover'], false], 1, 0.3]
}
});
Run Code Online (Sandbox Code Playgroud)
问题是它采用原始不透明度(0.3),但悬停时不会改变。
任何想法?
谢谢。