我使用了谷歌 Map api提供的简单方向服务api样本,而 Map 确实调整为显示两个不同的点,没有绘制路线或标记 .
这是我有的:
var directionsDisplay;
var directionsService = new google.maps.DirectionsService();
var map;
function initialize(data) {
directionsDisplay = new google.maps.DirectionsRenderer();
var chicago = new google.maps.LatLng(41.850033, -87.6500523);
var mapOptions = {
zoom:7,
center: chicago
};
map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
directionsDisplay.setMap(map);
}
function calcRoute() {
var start = "chicago, il";
var end = "st louis, mo";
var request = {
origin:start,
destination:end,
travelMode: google.maps.TravelMode.DRIVING
};
directionsService.route(request, function(response, status) {
if (status == google.maps.DirectionsStatus.OK) {
directionsDisplay.setDirections(response);
}
});
}
<div style="height: 25rem; width: 40rem;" id="map-canvas"></div>
我的代码中缺少什么来显示默认标记和路由线?
非常感谢
1 回答
你必须在初始化之后的某个地方调用calcRoute() . 你可以在初始化结束时执行此操作();例: