Клуб API Карт

API Яндекс.Карт jQuery Mobile

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

Вот такая ситуация - использую яндекс карты с jquery mobile, но получил кучу багов. На стартовой странице своего приложения http://m.sletat.ru/ присоединяю все скрипты и библиотеки, которые буду использовать. Переходы по страницам осуществляются при помощи jquery mobile, но на внутренних страницах (после нескольких переходов) карты не отрисовываются. Вернее отрисовываются, но их не видно. Анализируя элемент в котором я рисую карты через firebug вижу, что там появляется контент, но его не видно ... Зато есть такая особенность - стоит изменить размер окна браузера и повертеть мобильник в руках, чтобы изменилась его ориентация как вдруг карты начинают работать.

 

Вообще все "Hellow World" примеры, которые меня интересовали с jQuery Mobile работают, только на той странице, где все грузится (в том числе и карты). А стоит сделать несколько переходов по страницам и попробовать нарисовать карты, так после этого появляются такие баги. Элементарных ошибок я не делаю, пользуюсь firebug, в консоли ошибок нет.

 

На то, что я описываю можно посмотреть на странице одного тура, нажав на кнопку "Показать точки продаж". После перехода должна нарисоваться карта, она видимо рисуется, но её не видно. Если покрутить мобильник вруках с изменением ориентации или поменять размер окна браузера, то карты показываются.

2 комментария

попробуйте вызывать mymap.container.fitToViewport()  после инстанцирования карты на странице 

Все, вопрос решился. Я грешил на карты, а оказалось jquery mobile. Необходимо подписываться на pageshow для того, чтобы при отрисовки карты элемент страницы был видимым.