#javascript #leaflet
Вопрос:
Я немного озадачен этим. Приведенный ниже код корректно работает для создания набора линий сетки. Я хотел бы настроить его так, чтобы я мог включать и выключать их в поле слои наложения/управления. Как бы я включил и выключил этот код, используя флажок в блоке управления?
Спасибо!
//Grid lines var hold = 0 for (let i = 0; i lt;17; i ) { var pointA = map.unproject([hold, 0], map.getMaxZoom()); var pointB = map.unproject([hold, 8192], map.getMaxZoom()); var pointList = [pointA, pointB]; var firstpolyline = new L.Polyline(pointList, { color: 'grey', weight: 4, opacity: 0.8, smoothFactor: 1 }); firstpolyline.addTo(map); var pointA = map.unproject([0, hold], map.getMaxZoom()); var pointB = map.unproject([8192, hold], map.getMaxZoom()); var pointList = [pointA, pointB]; var firstpolyline = new L.Polyline(pointList, { color: 'grey', weight: 4, opacity: 0.8, smoothFactor: 1 }); firstpolyline.addTo(map); hold = hold 512 }```
Ответ №1:
Вы можете создать группу объектов и добавить к ним слои, а затем добавить группу объектов в элемент управления слоями.
var fg = L.featureGroup().addTo(map); // If you want to hide it initial remove .addTo(map) yourLayerControlVariable.addOverlay(fg); ... firstpolyline.addTo(fg);
Комментарии:
1. Спасибо, Флейк! Я заставил его работать, но столкнулся с отдельной проблемой, из-за которой я не могу загрузить функцию, кроме как при увеличении.