これは問題です。非常に単純ですが、私はそれを得ることができません。たとえば<a href="includes/driving.php?lat=38.254181&long=20.649962" class="driving" >Driving instructions</a>
、クリックすると(jQueryを使用して)次のようなgooglemapが開きます。
jQuery('a.driving').live('click',function(){
jQuery('#content').empty().load(jQuery(this).attr('href'), function(){
initGeolocation();
})
return false;
});
関数initGeolocation();
が HTML5 の場所を取得class="driving"
し、ページに複数のリンクがあります。私が起こらないのは、緯度と経度の変数をマップに渡すことです。それらをこの関数に入れる必要があります:
function calcRoute(position) {
var start = '38.313393,20.562651';
var end = 'lat' , 'long'
var request = {
origin:start,
destination:end,
travelMode: google.maps.DirectionsTravelMode.DRIVING
};
directionsService.route(request, function(response, status) {
if (status == google.maps.DirectionsStatus.OK) {
directionsDisplay.setDirections(response);
}
});
}
必要に応じて、マップは次のように呼び出されます (標準コード)
function success(position) {
var myOptions = {
zoom: 13,
center: new google.maps.LatLng(38.313393, 20.562651),
mapTypeId: google.maps.MapTypeId.ROADMAP
}
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
directionsDisplay = new google.maps.DirectionsRenderer({
'map': map,
'preserveViewport': true,
'draggable': true
});
directionsDisplay.setPanel(document.getElementById("directions_panel"));
google.maps.event.addListener(directionsDisplay, 'directions_changed',
function() {
if (currentDirections) {
oldDirections.push(currentDirections);
setUndoDisabled(false);
}
currentDirections = directionsDisplay.getDirections();
});
setUndoDisabled(true);
calcRoute(position);
}
助けてくれてありがとう