Показать сообщение отдельно
  #8 (permalink)  
Старый 22.04.2021, 17:34
Аспирант
Отправить личное сообщение для Dolf Посмотреть профиль Найти все сообщения от Dolf
 
Регистрация: 04.04.2021
Сообщений: 31

рони,
Все же тут можно использовать только для метро, городов.
А мне надо было для организаций. Но Вы правильно меня натолкнули в первом случае. Сейчас примерно вот так описал оно работает.
// Функция ymaps.ready() будет вызвана, когда
    // загрузятся все компоненты API, а также когда будет готово DOM-дерево.
    ymaps.ready(init);
    function init(){
        // Создание карты.
        var myMap = new ymaps.Map("ymap", {
            // Координаты центра карты.
            // Порядок по умолчанию: «широта, долгота».
            // Чтобы не определять координаты центра карты вручную,
            // воспользуйтесь инструментом Определение координат.
            center: [<?= $centerX;?>, <?= $centerY;?>],
            // Уровень масштабирования. Допустимые значения:
            // от 0 (весь мир) до 19.
            zoom: <?= $zoom;?>,
            controls: ['zoomControl', 'typeSelector',  'fullscreenControl']
        }, {
                autoFitToViewport: 'always',
                searchControlProvider: 'yandex#search'
            }),
            objectManager = new ymaps.ObjectManager({
            // Чтобы метки начали кластеризоваться, выставляем опцию.
            clusterize: false,
            // ObjectManager принимает те же опции, что и кластеризатор.
            gridSize: 32,
            clusterDisableClickZoom: false,
        });

        // Чтобы задать опции одиночным объектам и кластерам,
        // обратимся к дочерним коллекциям ObjectManager.
        objectManager.objects.options.set('preset', 'islands#greenDotIcon');
        objectManager.clusters.options.set('preset', 'islands#greenClusterIcons');
        myMap.geoObjects.add(objectManager);
        objectManager.add(<?= $markers;?>);

        var searchControl = new ymaps.control.SearchControl({
            options: {
                maxWidth: 'small',
               // noPopup: true,
                provider: 'yandex#search'
            }
        });

        myMap.controls.add(searchControl);

        $(document).ready(function () {
            $('body').on('click', '.school', function () {
                let button = $('#school').text();
                searchControl.search(button);
            });
        });

        $(document).ready(function () {
            $('body').on('click', '.med', function () {
                let button = $('#med').text();
                searchControl.search(button);
            });
        });

        $(document).ready(function () {
            $('body').on('click', '.mol', function () {
                let button = $('#mol').text();
                searchControl.search(button);
            });
        });

        $(document).ready(function () {
            $('body').on('click', '.child', function () {
                let button = $('#child').text();
                searchControl.search(button);
            });
        });
    }

Можно развивать дальше думается. Спасибо Вам как всегда!
Ответить с цитированием