Обновите API Google Static Maps, чтобы включить увеличение - PullRequest
0 голосов
/ 29 января 2011

В данный момент я использую Google Static Maps API:

<img src="http://maps.google.com/maps/api/staticmap?center={$listing.City},{$listing.State}&zoom=5&size=145x145&maptype=roadmap&sensor=false"></img>

Как вы можете видеть, я использую Smarty для заполнения местоположения:

{$listing.City},{$listing.State}

Я хотел бы добавить маркер и управление масштабированием, используя Google Maps API v3.Какой самый эффективный способ добиться этого?Я полагаю, мне нужно использовать геокодирование?

Спасибо

1 Ответ

1 голос
/ 29 января 2011

Недавно у меня был проект, включающий Google Map с использованием API v3. Я решил обернуть API в плагин jQuery. API довольно прост. Вот ссылка на пост в блоге, где я говорю о плагине jQuery. Что еще более важно, вы можете получить код плагина. Этот код показывает все детали о том, как создать карту и добавить маркеры.

http://blog.bobcravens.com/2010/06/a-google-maps-version-3-jquery-plugin/

Вот несколько важных фрагментов:

Включите в заголовок следующее:

<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>

Этот фрагмент создает карту:

   var latlng = new google.maps.LatLng(lat, lng);
    var settings = {
        zoom: options.zoom,
        center: latlng,
        mapTypeControl: true,
        mapTypeControlOptions: { style: google.maps.MapTypeControlStyle.DROPDOWN_MENU },
        navigationControl: options.navControl,
        navigationControlOptions: { style: google.maps.NavigationControlStyle.SMALL },
        mapTypeId: google.maps.MapTypeId.SATELLITE
    }
    var theMap = new google.maps.Map($("#div_id")[0], settings);

Чтобы добавить оверлей, сделайте следующее:

    var latlng = new google.maps.LatLng(lat, lng);
    var marker = new google.maps.Marker({
        position: latlng,
        map: theMap,
        title: "title"
    });

Я советую вам взглянуть на плагин для более подробной информации. Надеюсь, это поможет.

Bob

...