geolocation-8.x-3.x-dev/js/MapFeature/ControlTileLayers.js

js/MapFeature/ControlTileLayers.js
import { GeolocationMapFeature } from "./GeolocationMapFeature.js";

export default class ControlTileLayers extends GeolocationMapFeature {
  onMapReady() {
    super.onMapReady();

    const controlContainer = this.map.wrapper.querySelector(".geolocation-map-control.control_tile_layers");
    if (!controlContainer) {
      return;
    }

    const tileCheckboxes = controlContainer.querySelectorAll('input[type="checkbox"]');
    tileCheckboxes.forEach((checkbox) => {
      const layerId = checkbox.getAttribute("name");
      checkbox.addEventListener("change", () => {
        if (checkbox.checked) {
          this.map.loadTileLayer(layerId, this.map.settings.tile_layers[layerId] ?? {});
        } else {
          this.map.unloadTileLayer(layerId);
        }
      });
    });
  }
}

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc