2011-10-12 61 views
2
(function(){ 
window.onload =function(){ 
var directionsDisplay; 
var directionsService = new google.maps.DirectionsService(); 

directionsDisplay = new google.maps.DirectionsRenderer(); 
    document.getElementById("lat").style.visibility = "hidden"; 
    document.getElementById("longi").style.visibility = "hidden"; 
    document.getElementById("number").style.visibility = "hidden"; 
    document.getElementById("addressone").style.visibility = "hidden"; 
    document.getElementById("city").style.visibility = "hidden"; 
    document.getElementById("countie").style.visibility = "hidden"; 
    document.getElementById("postcode").style.visibility = "hidden"; 
    var mapDiv = document.getElementById('map'); 
    var latitude = document.frmOne.lat.value; 
    var longitude = document.frmOne.longi.value; 
    var number = document.frmOne.number.value; 
    var addressone = document.frmOne.addressone.value; 
    var city = document.frmOne.city.value; 
    var countie = document.frmOne.countie.value; 
    var postcode = document.frmOne.postcode.value; 
    var latlng = new google.maps.LatLng(latitude,longitude); 
    var options ={ 
     center:latlng, 
     zoom:18, 
     mapTypeId:google.maps.MapTypeId.ROADMAP 

    }; 

    var map= new google.maps.Map(document.getElementById('map'),options); 
    directionsDisplay.setMap(map); 

     var marker = new google.maps.Marker({ 
    position: new google.maps.LatLng(latitude,longitude), 
    map: map, 
    title: 'Click me' 
    }); 

    var infowindow = new google.maps.InfoWindow({ 
    content: number+" "+addressone+"<br>"+city+"<br>"+countie+"<br>"+postcode 
    }); 

    google.maps.event.addListener(marker, 'click', function() { 
    // Calling the open method of the infoWindow 
    infowindow.open(map, marker); 
}); 


var start = (latitude,longitude); 
var end = "51.403650,-1.323252"; 
var request = { 
origin:start, 
destination:end, 
travelMode: google.maps.TravelMode.DRIVING 
    }; 
    directionsService.route(request, function(result, status) { 
    if (status == google.maps.DirectionsStatus.OK) { 
    directionsDisplay.setDirections(result); 
    } 
    }); 



    }; 
    })(); 

使用php生成經度和緯度,並且工作完美。包含標記但地圖加載的地圖未顯示。谷歌Api方向使用javascript

我找不到一個很好的指導方向,所以如果有人知道這也將是一個幫助 我知道我的代碼不是很整潔,但我不是很好的Java腳本。

回答

5

您已複製example from their own reference它看起來像我,這很好。不過他們使用的是地名,而您正在使用latlng座標。因此,您需要做的是使用實際的拉格朗日對象而不是僅僅使用「51.403650,-1.323252」(緯度,經度)

var request = { 
    origin:new google.maps.LatLng(latitude,longitude), 
    destination:new google.maps.LatLng(51.403650,-1.323252), 
    travelMode: google.maps.TravelMode.DRIVING 
}; 
+0

DUDE,它固定它我愛你哈哈:P –