Клуб API Карт

помогите разобраться с ошибкой

soldex.ru
3 августа 2015, 10:54

на странице есть небольшой скрипт, который при при клике по ссылке получает координаты и описание для балуна и открывает его, перемещаясь по карте с помощью panTo

 

<script src="http://api-maps.yandex.ru/2.0/?load=package.full&lang=ru-RU" type="text/javascript"></script>
<script type="text/javascript">
var myMap;
ymaps.ready(init);
function init()
{
myMap = new ymaps.Map('YMapsID',
{
center: [55.604132, 37.503342],
zoom: 15,
type: 'yandex#map',
behaviors: ['default', 'scrollZoom']
});
myMap.controls
.add('zoomControl')
.add('typeSelector')
.add('mapTools');
go_to(37.503343,55.604132,"проезд Одоевского дом 2А","Офис-склад");
};

function go_to(lat,lon,decsription,name){
myMap.panTo([lon, lat], {
flying: true,
duration: 1000,
callback: function(err) {
if (err) {}
myMap.setZoom(16, {
duration: 500,
callback: function(err) {
myMap.balloon.open([lon, lat], {
contentBody:'<b>'+name+'</b><br>'+decsription,
});
}
});
}
});
return false;
}

</script>


и пример вызова:

<a href="javascript:void(0);" onclick="return go_to(37.503343,55.604132,'проезд Одоевского дом 2А','Офис-склад');">смотреть на карте</a>


не могу понять почему консоль выдает ошибку: "Uncaught TypeError: Cannot read property 'panTo' of undefined"
помогите разобраться
3 комментария
Подписаться на комментарии к посту

Можно увидеть ссылку на эту карту?

Комментарий удалён

этот код вызывает click в тот момент, когда АПИ еще не загружено и переменной myMap еще не присвоена карта

$('[name="contacts_region"]').bind("change", function () {
var thisId=$(this).val();
$("#contacts_address div[id^=bx_]").each(function(){
if($(this).attr("class")=="c_region_"+thisId)
$(this).show();
else
$(this).hide();
});
$("#contacts_address div[class^=c_region_"+thisId+"]").eq(0).find("a.c_address").click();
}).change();

спасибо