Javascript 谷歌地图API的困难
我正在尝试创建一个简单的程序,其中包含两个特定放置的目的地,并显示它们之间的方向。不管出于什么原因,我就是找不到出现的方向Javascript 谷歌地图API的困难,javascript,google-maps-api-3,Javascript,Google Maps Api 3,我正在尝试创建一个简单的程序,其中包含两个特定放置的目的地,并显示它们之间的方向。不管出于什么原因,我就是找不到出现的方向 <script> var directionsService = new google.maps.directionsService(); var directionsDisplay = new google.maps.directionsRenderer(); var new_york = {lat: 40.7128, lng: -74.0060
<script>
var directionsService = new google.maps.directionsService();
var directionsDisplay = new google.maps.directionsRenderer();
var new_york = {lat: 40.7128, lng: -74.0060};
var los_angeles = {lat: 34.0522, lng: -118.2437};
function initMap() {
var mapMarkers = [];
var map = new google.maps.Map(
document.getElementById('map'), {zoom: 4, center: {lat: 40, lng: -99}}
);
var marker1 = new google.maps.Marker({
position: new_york,
map: map,
title: 'Home'
});
var marker2 = new google.maps.Marker({
position: los_angeles,
map: map,
title: 'School'
});
}
calculateAndDisplayRoute: function(directionsService, directionsDisplay, new_york, los_angeles) {
directionsService.route({
origin: new_york,
destination: los_angeles,
travelMode: 'DRIVING'
}, function(response, status) {
if (status === 'OK') {
directionsDisplay.setDirections(response);
} else {
alert('Directions request failed due to ' + status);
}
});
}
</script>
<script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyDmA98U4We-2IAaHbxa354v_C91IktiSKM3&callback=calculateAndDisplayRoute"></script>
var directionsService=new google.maps.directionsService();
var directionsDisplay=new google.maps.directionsRenderer();
var new_york={lat:40.7128,液化天然气:-74.0060};
var los_angeles={lat:34.0522,液化天然气:-118.2437};
函数initMap(){
var mapMarkers=[];
var map=new google.maps.map(
getElementById('map'),{zoom:4,中心:{lat:40,lng:-99}
);
var marker1=新的google.maps.Marker({
职位:纽约,
地图:地图,
标题:“家”
});
var marker2=新的google.maps.Marker({
职位:洛杉矶,
地图:地图,
标题:“学校”
});
}
calculateAndDisplayRoute:函数(方向服务、方向显示、纽约、洛杉矶){
方向服务.路线({
产地:纽约,
目的地:洛杉矶,
travelMode:“驾驶”
},功能(响应、状态){
如果(状态=='OK'){
方向显示。设置方向(响应);
}否则{
警报('由于'+状态,指示请求失败);
}
});
}
我认为您的代码存在一些问题,首先您需要知道,在创建
DirectionsService
和DirectionsRenderer
的新实例之前,需要加载google地图库,顺便说一句,在这种情况下:
var directionsService = new google.maps.DirectionsService();
var directionsDisplay = new google.maps.DirectionsRenderer();
由于您没有异步加载映射库,因此可以将脚本放在页面顶部,只需删除回调参数。我对您的代码做了一些更改,请在下面查看(您需要添加api密钥):
var new_york={lat:40.7128,lng:-74.0060};
var los_angeles={lat:34.0522,液化天然气:-118.2437};
函数initMap(){
var mapMarkers=[];
var map=new google.maps.map(
getElementById('map'),{zoom:4,中心:{lat:40,lng:-99}
);
var marker1=新的google.maps.Marker({
职位:纽约,
地图:地图,
标题:“家”
});
var marker2=新的google.maps.Marker({
职位:洛杉矶,
地图:地图,
标题:“学校”
});
}
函数calculateAndDisplayRoute(){
initMap();
var directionsService=new google.maps.directionsService();
var directionsDisplay=new google.maps.DirectionsRenderer();
var路由={
产地:纽约,
目的地:洛杉矶,
travelMode:“驾驶”
};
路由(路由、功能(响应、状态){
如果(状态=='OK'){
方向显示。设置方向(响应);
}否则{
警报('由于'+状态,指示请求失败);
}
});
}
calculateAndDisplayRoute()代码>
请上传您的代码。您发布的代码中有语法错误。