Принесите вперед некоторые маркеры круга в особенность листовки

1

У меня есть функция на карте L.circleMarker состоящей из многих маркеров круга (L.circleMarker). Маркеры символизируются, чтобы показать, была ли сделана фотография в этом месте.

Я бы хотел сделать все маркеры, у которых есть фотография в этом месте до вершины слоя, подобно тому, как маркер может быть поднят с помощью мыши (но без мыши в этом случае).

Вот иллюстрация оригинальной версии:
Изображение 174551

И это то, что я хотел бы, чтобы они были такими:

Изображение 174551

Я рассматривал разные слои для фотографий и фотографий, но из-за некоторых функций на карте предпочтительнее, чтобы они находились в одном слое.

Любые идеи относительно того, как это можно сделать с помощью JavaScript и Листовки?

Теги:
leaflet

1 ответ

2
Лучший ответ

В определении стиля для маркера круга можно указать "панель карты", на которую отображается маркер (http://leafletjs.com/reference-1.0.3.html#map-pane). Кажется, что это единственный способ указать zIndex of circleMarkers (у обычных маркеров есть опция zindexOffset).

Мой код выглядит так:

var style = {
radius: 1.75,
fillColor: "darkred",
color: "darkred",
pane: 'overlayPane'
};
var picStyle = {
    radius: 0.25,
    fillColor: "blue",
    color: "blue",
    pane: 'shadowPane'
};
var site2 = new L.geoJSON(valuesSite2, {
    onEachFeature: onEachFeature,
    pointToLayer: function (feature, latlng) {
        feature.properties.layer = "Site 2";
        onEachFeature: onEachFeature;
        if (<there is a picture>) {
            return L.circleMarker(latlng, picStyle)
        } else {
            return L.circleMarker(latlng, style);
        }
    }
}).addTo(map);

Результат выглядит так:
Изображение 174551

Ещё вопросы

Сообщество Overcoder
Наверх
Меню