Клуб API Карт

Повторная инициализация карты (API 2.0)

Пост в архиве.

Подскажите пожалуйста как правильно повторно инициализировать карту?

 

Есть блок, содержимого которого может быть разным. В том числе в нем может быть карта, или иное содержимое. По событию содержимое блока удаляется и на его месте отрисовывается новое. 

 

Карта инициализируется следующим образом:

 

function CreateMap() {

        return new ymaps.Map(options.$map_container.attr('id'), {

            center: [options.center_x, options.center_y],

            zoom: options.zoom

        });

    }

 

Однако при повторном вызове функции карта не создается вновь. В чем может быть проблема?

2 комментария
Всеволод Шмыров
27 января 2016, 23:03
Добрый день. Код создания карты вроде корректный. А что именно происходит? Карта не появляется в элементе? Падают ли в консоль какие-нибудь ошибки?
Если ли на странице элемент с options.$map_container.attr('id')? Есть ли публичная ссылка с проблемой?
Sergey Konstantinov
27 января 2016, 23:03
Перед удалением содержимого блока нужно вызывать map.destroy()