Отображение карты Google в JQuery Mobile - PullRequest
1 голос
/ 05 февраля 2012

Я пытаюсь создать приложение JQuery Mobile.Я хочу, чтобы это приложение включало в себя карту Google.Я основывал свою реализацию на плагине jquery-ui-map.У них есть образец кода, доступный по адресу http://jquery -ui-map.googlecode.com / svn / trunk / demos / jquery-google-maps-mobile.html # basic_map .

Даже сВ этом примере я все еще не могу отобразить карту.Я чувствую, что использую самый простой код.Может кто-нибудь сказать, пожалуйста, что я делаю не так?Мой код показан ниже:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>
    <title></title>
    <script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=true"></script>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js" type="text/javascript"></script>
    <script type="text/javascript" src="/resources/scripts/jquery.ui.map.full.min.js" />
</head>

<body>
    <div id="result" data-role="page">
        <div data-role="header"><h1>My App</h1></div>

        <div data-role="content">
          <div id="resultMap" style="height:200px; width:200px; background-color:Lime;">   
          </div>
        </div>
    </div>

    <br /><br />

    <script type="text/javascript">
        $("#result").live("pageshow", function () {
            $("#resultMap").gmap();
        });
    </script>
</body>
</html>

Ответы [ 3 ]

1 голос
/ 06 февраля 2012

Хорошо.Я делаю это так:

var home = new google.maps.LatLng(x, y);

$('#directions_map').live("pageshow", function() {
    $('#map_canvas_1').gmap('refresh');
    });

$('#directions_map').live("pagecreate", function() {
    $('#map_canvas_1').gmap({'center': home, 'zoom':17 });
    $('#map_canvas_1').gmap('addMarker', { 'position': home, 'animation' : google.maps.Animation.DROP } );
    });

Поэтому, пожалуйста, попробуйте:
- создать gmap на pagecreate
- обновить только на pagehow
- маркер является бонусом ;-)

Дайте мне знать, если это поможет.Это из моего рабочего примера, так что все должно быть в порядке.Я думаю, важно, чтобы вы настроили gmap перед показом страниц.Если вы думаете о JQM как о сцене ... страница шоу была бы правильной, прежде чем поднять занавес.Возможно, слишком поздно для Google Magic.Создание страницы кажется лучше ...

0 голосов
/ 21 августа 2012

Я также не смог получить базовый пример из jQuery UI Maps для работы с первой попытки. После работы с примером в папке "demos" каталога jquery-ui-map-3.0-rc я убрал все ненужные html и javascript, чтобы отобразить очень простую карту. К сожалению, на сайте есть фрагменты кода, а не полный, работающий, но минималистичный пример.

Вам нужно проверить правильность ссылок на ссылки и скрипты.

<!doctype html>
<html lang="en">
   <head>
        <title>Example with Google maps and jQuery - Google maps jQuery plugin</title>
        <link type="text/css" rel="stylesheet" href="css/style.css" >
    </head>
    <body>
        <div id="map_canvas" class="map rounded"></div>     
        <script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script> 
        <script type="text/javascript" src="js/jquery-1.7.1/jquery.min.js"></script>
        <script type="text/javascript" src="../ui/jquery.ui.map.js"></script>
        <script type="text/javascript">
                    $('#map_canvas').gmap({'center': '57.7973333,12.0502107', 'zoom': 10, 'disableDefaultUI':true, 'callback': function() {
                        var self = this;
                        self.addMarker({'position': this.get('map').getCenter() }).click(function() {
                            self.openInfoWindow({ 'content': 'Hello World!' }, this);
                        }); 
                    }});
        </script> 
    </body>
</html>
0 голосов
/ 06 февраля 2012

Вы пробовали это:

jquery-mobile с картами Google

Я нашел, что это довольно легко реализовать.

...