2013-04-15 12 views
7

Ho utilizzato un po 'di JavaScript per ottenere indicazioni stradali sulla mia mappa di Google, ma per qualche motivo continuo a essere reindirizzato alla pagina delle mappe di Google.API di Google maps indicazioni reindirizzamento a map.google.com

Il problema è quando provo a ottenere indicazioni a piedi principalmente, anche se succede anche con l'opzione di trasporto pubblico.

Questa è un'app che funziona in PhoneGap, anche se non sono sicuro che questo sia un problema con PhoneGap.

Qualcuno ha già visto questo problema prima o qualcuno può vedere un problema con la mia implementazione?

// get drections 
directions: function (method) { 

    // set directions method 
    method = google.maps.DirectionsTravelMode.WALKING; 
    if (method === 'public') 
     method = google.maps.DirectionsTravelMode.TRANSIT; 

    // current position 
    var currentPos = new google.maps.LatLng(app.positionCords.latitude, app.positionCords.longitude); 

    // set the directions options 
    var request = { 
     origin: currentPos, 
     destination: app.venueCords, 
     travelMode: method 
    }; 

    // get the directions 
    app.directionsService.route(request, function (response, status) { 

     if (status == google.maps.DirectionsStatus.OK) { 

      // set up directions on the map 
      app.directionsDisplay.setMap(document.getElementById('map')); 
      app.directionsDisplay.setPanel(document.getElementById('directionsPanel')); 
      app.directionsDisplay.setDirections(response); 

     } else { 
      app.messageBox.alert(app.alertTitle, app.noDirectionsMsg, function(button) { console.warn('alert', [this, arguments]); }); 
     } 

    }); 

} 

risposta

4

Non riesco a capire completamente, ma potresti utilizzare il metodo sbagliato "app.directionDisplay.setMap".

Come ho passato il codice.

non ero in grado di trovare dove avete inizializzare mappa e poi è possibile assegnare le indicazioni per il MAP

 function initialize() { 
     var mapOptions = { 
      center: new google.maps.LatLng(-34.397, 150.644),//put your initial position values 
      zoom: 8, 
      mapTypeId: google.maps.MapTypeId.ROADMAP 
     }; 
     var map = new google.maps.Map(document.getElementById("map"), 
      mapOptions); 
     } 

quindi utilizzando funzione diversa è possibile inizializzare di percorso/direzioni.

Si rimanda per maggiori dettagli e esempio GOOGLE Documentation

ho dei dubbi con il tuo codice che inizia con

// set up directions on the map 
    app.directionsDisplay.setMap(document.getElementById('map')); 

Si prega di correggere quello ..

Spero che questo farà

+0

ho risolto questo un paio d'ore prima che tu lo pubblicassi ma avevi ragione. Avevo inizializzato la mappa in una variabile globale app.map e usandolo invece di document.getElementById ('mappa') risolto il problema – gazzwi86

Problemi correlati