我使用Google Maps API V3时遇到错误,我不明白。我的初始地图显示得很好,但是当我尝试获取路线时,我得到以下两个错误:
错误:属性“GUnload”的值为null或未定义,而不是Function对象
错误:无法获取属性'setDirections'的值:object为null或undefined
我没有在任何地方使用GUnload,所以我不明白为什么我会收到这个错误。就第二个错误而言,就好像Directions服务有问题。
这是我的代码:
var directionsDisplay;
var directionsService = new google.maps.DirectionsService();
var map;
function initialize(address) {
directionsDisplay = new google.maps.DirectionsRenderer();
var geocoder = new google.maps.Geocoder();
var latlng = new google.maps.LatLng(42.733963, -84.565501);
var mapOptions = {
center: latlng,
zoom: 15,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);
geocoder.geocode({ 'address': address }, function (results, status) {
if (status == google.maps.GeocoderStatus.OK) {
map.setCenter(results[0].geometry.location);
var marker = new google.maps.Marker({
map: map,
position: results[0].geometry.location
});
} else {
alert("Geocode was not successful for the following reason: " + status);
}
});
directionsDisplay.setMap(map);
}
function getDirections(start, end) {
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);
} else {
alert("Directions cannot be displayed for the following reason: " + status);
}
});
}
我对javascript并不是很精明,所以我可能会在那里犯一些错误。我感谢任何帮助。
答案 0 :(得分:0)
GUnload是Google Maps API v2的一部分。如果您收到错误消息,指出它未定义,则表示您的某些代码(或您的应用程序中包含的代码)正在使用它,并且您使用的是Google Maps API v3,但未提供该代码
如果没有看到更多上下文,就无法评论setDirections问题,但很可能是因为在加载API代码之前尝试调用它。