Опять функция перерисовки яндекс карты

317
16 декабря 2018, 11:20

Была тут подобная тема, но ее решение вообще не работает.

(function ($, ymaps) {
"use strict";
var maps = new Map();
var counter = 1;
var mapEmpty = '';
$(document).on('onEventToggleOpen', function (e, data) {
    if (data.event.location == '') {
        return;
    }
    var glob = data.glob;
    var $instance = data.$instance;
    var helper = data.helper;
    var event = data.event;
    var $event = $instance.$events.find('.stec-layout-event.active');
    var $inner = $event.find('.stec-layout-event-inner-location');
    $inner.html(function (index, html) {
        return html
                .replace(/stec_replace_location/g, event.location)
                .replace(/stec_replace_map_id/g, event.id)
                .replace(/stec_replace_details/g, event.location_details);
    });
    if ($.trim($inner.find('.stec-layout-event-inner-location-details').text()) == "") {
        $inner.find('.stec-layout-event-inner-location-optional-details').hide();
    }


    function initymap() {
        var myMap = new ymaps.Map('map-' + event.id, {
            center: [event.latitude, event.longitude],
            zoom: 15,
            autoFitToViewport: 'always'
        }, {
            searchControlProvider: 'yandex#search'
        }),
                // Создаем геообъект с типом геометрии "Точка".
                myGeoObject = new ymaps.GeoObject({
                    // Описание геометрии.
                    geometry: {
                        type: "Point",
                        coordinates: [event.latitude, event.longitude]
                    },
                    // Свойства.
                    properties: {
                        // Контент метки.
                        iconContent: event.calendar_description,
                        hintContent: event.calendar_description
                    }
                }, {
                    // Опции.
                    // Иконка метки будет растягиваться под размер ее содержимого.
                    preset: 'islands#blackStretchyIcon',
                    // Метку можно перемещать.
                    draggable: true
                });
        myMap.geoObjects.add(myGeoObject);
        maps.set('map-' + event.id, myMap);
    }
    function loadMap() {
        if ($inner.is(':visible')) {
            var $event = $inner.parents('.stec-layout-event');

        } else {
            return;
        }
        var $mapCont = $event.find(".stec-layout-event-inner-location-right-gmap");
        // init once
        if ($mapCont.children().length <= 0) {
            var map_cur = 'map-' + event.id;
            counter++;
            ymaps.ready(initymap);
            // initymap;
            console.log(counter + 'create ' + map_cur);
        } else {
            mapEmpty = 'map-' + event.id;
            var time = 600;
            $('.' + mapEmpty).slideToggle(time, function () {
                myMap1 = maps.get(mapEmpty);
                myMap1.container.fitToViewport();
            });
        }
    }
    $(document).on('stec-tab-click-' + glob.options.id, function () {
        loadMap();
    });
    loadMap();
    // Remove preloader
    $inner.find('.stec-layout-event-inner-preload-wrap').children().first().unwrap();
    $inner.find('.stec-layout-event-inner-preload-wrap').remove();
    $inner.find('.stec-preloader').remove();
});})(jQuery, window.ymaps);

уже чего только не пробовал и удалял карты и destroy делал и все вместе потом заново создавал. есть адекватный метод который выводит карты из анабиоза?

Так выглядит структура при скрытой карте

А так после ее повторного показа

READ ALSO
Как отследить изменившееся значение sessionStorage и поместить в переменную?

Как отследить изменившееся значение sessionStorage и поместить в переменную?

В проекте есть таблица Bootstrap, состоящая из трех колонокПодключен плагин colresizable для того чтобы иметь возможность изменять ширину колонок...

174
Ошибки в консоли при запуске live-server

Ошибки в консоли при запуске live-server

При запуске live-server для автоматического обновления страницы в консоли всегда появляются три ошибки, причем они присутствуют всегда даже если...

158
Нужно привязать клавижу клавиатуры к button с помощью javascript

Нужно привязать клавижу клавиатуры к button с помощью javascript

Мне нужно привязать клавишу клавиатуры к button, чтобы при нажатии она активировалась, и происходило какое-то действие

179
UNKNOWN: unknown error, open

UNKNOWN: unknown error, open

При сборке проекта gulp выдает ошибку такого вида:

214