У меня от 10 до 15 различных слоев, например, автомобиль, автобус, маршрут и т. Д. И т. Д. Этот слой я добавляю динамически на карту, когда это необходимо, потому что все слои не существуют на карте.
Итак, я показываю информацию об слоях одним щелчком мыши, но я хочу, чтобы при наведении курсора мыши на слой менялся стиль курсора указателя мыши на «Перекрестие».
Я написал изменение стиля курсора на событии mouseenter, но иногда оно кажется работающим, а иногда даже при наведении курсором мыши на слой, но стиль курсора не изменяется.
Первый способ:
map.on('mouseenter', (e: any) => {
self.mapInstance.getCanvas().style.cursor = 'crosshair';
});
Второй путь:
map.on('mouseenter',(e: any) => {
var features = map.queryRenderedFeatures(e.point,{ layers: ['Car',"Bus"] });
//error let's say any layer still on exist on map
if(features.length)
map.getCanvas().style.cursor = 'crosshair';
});
Мои проблемы :
Стиль курсора не меняется
Ошибка на queryRenderedFeatures, как слой не существует
Мышь на мерцающем слое
Как изменить стиль курсора при наведении мыши на разные слои?