не удается отобразить карту в мобильном приложении с помощью Jquery touch

#javascript #jquery #android #google-maps #jquery-mobile

#javascript #jquery #Android #google-карты #jquery-мобильный

Вопрос:

Я пытаюсь разработать приложение, которое должно отображать карту с использованием API Карт Google. Но я не могу заставить его работать с последним кандидатом на выпуск. Однако я получил эту раскладушку, работающую с более старой версией. Я поместил ее в этот jsFiddle, чтобы вы могли видеть ее вживую.
http://jsfiddle.net/huqY3/

Заранее спасибо

Ответ №1:

Ваш #map_canvas и его родительский элемент div имеют высоту 0 пикселей. Итак, ваша карта Google загружается, но отображается в невидимом контейнере.

Я думаю, что jQueryMobile переопределяет ваши встроенные стили CSS.

Чтобы исправить это, вы можете просто вручную установить высоту #map_canvas после события pagecreate. Либо фиксированная высота (т.Е. 500 пикселей), либо вычисляемая (возьмите высоту документа и вычтите высоту заголовка.)

например :

 $('.page-map').live("pagecreate", function() 
{
   var docH =  $('body').height();
   var headH=  $('body > div:eq(1)').height();
   $('#map_canvas').height(docH-headH);

   initialize();
});
  

Возможно, это не лучший способ, но трудно сказать, не зная о вашем проекте.

Комментарии:

1. Невероятно, мы пришли к тому же ответу в одно и то же время … я понял это сейчас, я пробовал высоту и ширину 100%, но это не работает, но с фиксированными значениями это работает, и я собирался посмотреть на изменение размера, которое вы там указали. СПАСИБО!