Клуб API Карт

Нужна помощь с переносом яндекс карт на API 2.Х

Пост в архиве.
Евгений Николаев
2 октября 2013, 13:40

Здравствуйте, проблема в следующем, на сайте при нажатии на кнопку отображались яндекс карты АПИ 1.0 в окне, сейчас хочу поставить АПИ 2.Х, изменил скрипт на 2.0

<script type="text/javascript" src="http://api-maps.yandex.ru/2.0/?load=package.standard&mode=debug&lang=ru-RU"></script>

и добавил в скрипт вызова формы

 

$('.map').click(function (e) {

    $('#mapoverlay').dialog('open');

    ymaps.ready(function () {

        var Map = new ymaps.Map("#mapoverlay", {

            center: [55.76, 37.64],

        });

    });

});

 

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

18 комментариев

При наличии ссылки на страницу, легче определить источник проблемы.

обнаружить ошибку можно в консоли javascript броузера (инструменты разработчика)

Евгений Николаев
28 января 2016, 01:23

вот ссылка на карты http://test.mc-om.ru/locations/

Евгений Николаев
28 января 2016, 01:23

Ошибка я так понимаю " Error: map.Container.constructor: HTML element with the specified id does not exist" поискал но все равно не могу понять (((

Id надо указывать без решетки

"mapoverlay"

Евгений Николаев
28 января 2016, 01:23

Спасибо друг ))) ты мой герой ...

 

Евгений Николаев
28 января 2016, 01:23

только карты не видно почему то )))

 

Ты создаешь карту когда окошко еще не открылось

Создавай ее в обработчике события open

Евгений Николаев
28 января 2016, 01:23

я примерн понял, но в функциях не особо силен )

То есть надо сделать так:

$('.map').click(function (e) {

$('#mapoverlay').dialog('open=function () {

   var Map = new ymaps.Map("#mapoverlay", {

       center:[55.76, 37.64],

};

};

ymaps.ready;

});

 

Евгений Николаев
28 января 2016, 01:23

нифига не пойму а что делать с ymaps.ready

Евгений Николаев
28 января 2016, 01:23

можешь написать как надо плиз, я воще нуп какой то )))) еще со скобками разобраться не могу толком 

var map;

 

ymaps.ready(function () {

    map = new ymaps.Map('mapoverlay', {

        center: [55.76, 37.64],

        zoom: 12

    });

});

 

$('#mapoverlay').dialog({

    open: function () {

        map.container.fitToViewport();

    }

});

 

$('.map').click(function (e) {

    $('#mapoverlay').dialog('open');

});

Евгений Николаев
28 января 2016, 01:23

Спасибо, ошибку уже нашел, воще нелепая была (((, только теперь при вызове второй раз и третий карта добавляеться снизу, как обнулить ее что бы новая была на ее месте, а не снизу ???

Евгений Николаев
28 января 2016, 01:23

приходится перезагружать страницу

лучше создать карту один раз,

а при клике на ссылку просто ее отображать

Евгений Николаев
28 января 2016, 01:23

ок пасиб

Евгений Николаев
28 января 2016, 01:23

Может кто помоч, срочно надо очень :-(

Евгений Николаев
28 января 2016, 01:23

Сделал так:

$('.map').click(function (e) {

$('#mapoverlay').dialog({

open:function(){

var Map = new ymaps.Map("mapoverlay", {

center:[55.76, 37.64]

});

}

});

});

В роде же все правильно но не пашет, окно даже не открывает ((((