Mapbox 背景图层点击事件不起作用
Mapbox background layer click event not working
我正在尝试在 Mapbox 中的透明背景图层上设置点击事件。这是一个代码片段:
map.on('load', function () {
map.addLayer({
id: 'transparent',
type: 'background',
interactive: true,
paint: {
'background-color': '#dedede',
'background-opacity': 0
}
})
}
//This doesn't print Hello World to the console
map.on('click', 'transparent', function () {
console.log('Hello World')
})
在符号图层上调用相同的事件没有问题。任何帮助将不胜感激。
层指定源的样式。层的类型由 'type' 属性 指定,并且必须是背景、填充、线条、符号、光栅、圆形、填充拉伸、热图、山体阴影之一。
除了背景类型的图层外,每个图层都需要引用一个来源。
图层获取它们从来源获得的数据,可选择过滤特征,然后定义这些特征的样式。
我建议在地图上添加一个事件,而不是像:
map.on('click', function (e) {
//code
});
示例:
https://docs.mapbox.com/mapbox-gl-js/example/mouse-position/
如何添加背景图层:
https://bl.ocks.org/stevage/a09dcbd11fb24b20033f2d3f6ab01374
我正在尝试在 Mapbox 中的透明背景图层上设置点击事件。这是一个代码片段:
map.on('load', function () {
map.addLayer({
id: 'transparent',
type: 'background',
interactive: true,
paint: {
'background-color': '#dedede',
'background-opacity': 0
}
})
}
//This doesn't print Hello World to the console
map.on('click', 'transparent', function () {
console.log('Hello World')
})
在符号图层上调用相同的事件没有问题。任何帮助将不胜感激。
层指定源的样式。层的类型由 'type' 属性 指定,并且必须是背景、填充、线条、符号、光栅、圆形、填充拉伸、热图、山体阴影之一。
除了背景类型的图层外,每个图层都需要引用一个来源。
图层获取它们从来源获得的数据,可选择过滤特征,然后定义这些特征的样式。
我建议在地图上添加一个事件,而不是像:
map.on('click', function (e) {
//code
});
示例:
https://docs.mapbox.com/mapbox-gl-js/example/mouse-position/
如何添加背景图层:
https://bl.ocks.org/stevage/a09dcbd11fb24b20033f2d3f6ab01374