Клуб API Карт

API 1.1 - карта в табах от bootstrap

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

Всем добрый вечер, возникла проблема, есть 4 вкладки на bootstarp в каждой есть по своей карте.

 

Соотвественно есть следующий код

 

$('.tabs_tabbernav a').click(function (e) {
YMaps.jQuery(function () {
if ($(e.target).attr('href') == '#tab-spb' ) {
map_spb.redraw();
map_spb.setCenter(new YMaps.GeoPoint(30.322057, 59.98235), 10);
}

if ($(e.target).attr('href') == '#tab-moscow' ) {
map_msk.redraw();
map_msk.setCenter(new YMaps.GeoPoint(37.42989, 55.742389), 9);
}

if ($(e.target).attr('href') == '#tab-nn' ) {
map_nn.redraw();
map_nn.setCenter(new YMaps.GeoPoint(44.005945, 56.323833), 11);
}

if ($(e.target).attr('href') == '#tab-season' ) {
map_sv.redraw();
map_sv.setCenter(new YMaps.GeoPoint(37.64, 55.76), 9);
}
});
})

 

События клика срабатывает смотрел через отладку. Атрибуты href совпадают со вкладками, переменные map_spb  опредлены:


var map_msk = new YMaps.Map(YMaps.jQuery("#map_msk")[0]);

 var map_spb = new YMaps.Map(YMaps.jQuery("#map_spb")[0]);

  var map_nn = new YMaps.Map(YMaps.jQuery("#map_nn")[0]);

var map_sv = new YMaps.Map(YMaps.jQuery("#map_sv")[0]);


Но при переходе на другую вкладку, карта тупо не перерисовывается, что можете посоветовать ??

3 комментария
Зачем вам 1.1? Она еще Ленина видела
Федор Земсков
27 января 2016, 23:32

Поверьте мне самому не за чем, код был дан соотвественно =))

 

Попросили просто сделать вкладки и скрыть в них карты с магазином, просто переделывать нету возможности как таковой , вроде по логике все правильно, но перерисовки никакой нету...

 

Или варианта реализовать нету, я наткнулся на решение и по похожему сценарию сделал...

 

И еще один вопрос а API 1.1 с Jquery 1.9 вообще совместимо ???

а есть ссылка?

В целом такое решение очень топорное.

Карта должна быть либо одна (и у нее меняется центр), либо создаваться и удаляться при открытии вкладки