[Решено] Quicktabs и Яндекс карты. Серый квадрат вместо карты.
Люди. Возник вопрос, скорее всего по программированию на JS
Есть Яндекс карты на сайте. Добавляются с помощью API и JS. + Quicktabs. Проблема такая: При переключении на другой таб, карта не перерисовывается, т.е. вместо карты серый фон. Кто сталкивался и как решил? Я предполагаю, что нужно перехватить событие нажатия на заголовок таба и перерисовать самому, но как это сделать?
[Решение]
В обработчик добавлен перехват события по нажатию вот так:
var rndmap = new YMaps.Map(document.getElementById("YMapsRND"));
<... Определение параметров карты ...>
var mosmap = new YMaps.Map(document.getElementById("YMapsMOS"));
<... Определение параметров карты ...>
// Собственно, перерисовать карту при нажатии на ссылку (заголовок таба)
YMaps.jQuery("#quicktabs-tab-_contactstabs-0").bind('click', function () {
mosmap.redraw(); // Перерисовывает карту
return false;
});
YMaps.jQuery("#quicktabs-tab-_contactstabs-1").bind('click', function () {
rndmap.redraw(); // Перерисовывает карту
return false;
});
}
Где quicktabs-tab-_contactstabs-0 и quicktabs-tab-_contactstabs-1 - это id ссылок - заголовков табов.