Google Map V3.0 Places Api - PullRequest
       2

Google Map V3.0 Places Api

0 голосов
/ 19 мая 2011

Я работаю над проектом GoogleMap. Я столкнулся с заданием с 3-х дней (действительно долгих дней). Невозможно завершить задание. Я начинающий JavaScript.

Я хочу чего-то достичь, как показано в ссылке для местоположения в Великобритании. Я изменил его на местоположение в Великобритании (ЛОНДОН) и изменил типы на банк. В основном я ожидал, что булавка банков в данном радиусе будет отображаться. Но это не так. Я меняю типы на train_station, странно, я получаю неправильный вывод.

Код, который я использую, показан ниже. Может кто-нибудь помочь мне, пожалуйста ..

<code>    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html> 
<head> 
  <meta http-equiv="content-type" content="text/html; charset=UTF-8"/> 
  <title>Google Maps JavaScript API v3 Example: Place Search</title> 

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

  <style type="text/css">
    #map {
      height:500px;
      width:100%;

    }
  </style>

  <script type="text/javascript">

      var map;
      var service;
      var infowindow;

      function initialize() {

      // Australia PostCode
         //var pyrmont = new google.maps.LatLng(-33.8665433, 151.1956316);
          // Uk Post Code
          //Northampton
          //var pyrmont = new google.maps.LatLng(52.238, -0.895);
          //London
          var pyrmont = new google.maps.LatLng(51.4916807, -0.1920284);

        //  var pyrmont = new google.maps.LatLng(40.704, -70.0083);


          map = new google.maps.Map(document.getElementById('map'), {
              mapTypeId: google.maps.MapTypeId.ROADMAP,
              center: pyrmont,
              zoom: 12
          });
          var request = {
              location: pyrmont,
              radius: '50000',
              types: ['train_station']

          };
          infowindow = new google.maps.InfoWindow();
          service = new google.maps.places.PlacesService(map);
          service.search(request, callback);
      }

      function callback(results, status) {
          if (status == google.maps.places.PlacesServiceStatus.OK) {
              for (var i = 0; i < results.length; i++) {
                  var place = results[i];
                  createMarker(results[i]);
              }
          }
      }

      function createMarker(place) {

          var placeLoc = place.geometry.location;
          var marker = new google.maps.Marker({
              map: map,

              position: new google.maps.LatLng(placeLoc.lat(), placeLoc.lng())
          });
          google.maps.event.addListener(marker, 'click', function () {
              infowindow.setContent(place.name);
              infowindow.open(map, this);
          });
      }

  </script> 
</head> 
<body onload="initialize()"> 
  <div id="map"></div>
  <div id="text">
    <pre>
var request = {
  bounds: new google.maps.LatLngBounds(
      new google.maps.LatLng(-33.867114, 151.1957),
      new google.maps.LatLng(-33.866755, 151.196138)),
  types: ['political']
};
    

Ответы [ 2 ]

2 голосов
/ 19 мая 2011

Похоже, что Google Места на данный момент не очень популярны в Лондоне. Когда вы вообще опускаете массив типов, он возвращает только несколько мест. Ни один из них не является железнодорожным вокзалом или банком. Поэтому сначала вам нужно будет добавить железнодорожные станции и банки в Google Адреса.

Несмотря на отсутствие данных в Google Places для Лондона, API работает. Вы можете увидеть кучу результатов, если вы используете, например, «музей» в качестве элемента в массиве типов.

Не знаю, что случилось с этой ошибкой вывода train_station? API Google Places является экспериментальным. Возможно, вам следует сообщить об ошибке в Google. Отслеживатель проблем находится на http://code.google.com/p/gmaps-api-issues/issues/list. Выберите «Places API - Bug» из первого выпадающего элемента при регистрации ошибки.

0 голосов
/ 20 мая 2011

Между тем, поиск имени = банка или имени = поезда + станции (вместо использования типов), вероятно, даст вам то, что вы ищете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...