Javascript Google Maps API v3自定义标记未出现
我想在我的网站上显示一些类似于谷歌地图的交通方向,所以我试图在同一张地图上显示多种不同类型的方向。对于exmaple,我想展示一个旅程,在那里你可以步行到公交车,坐公交车到其他街道,然后步行到你的最终目的地 为此,我尝试使用自定义标记在同一地图上获取多个方向请求的结果。我有一个名为change_map()的函数,它应该在地图上显示其中一次行程的信息 我有两个问题:Javascript Google Maps API v3自定义标记未出现,javascript,google-maps,google-maps-markers,directions,Javascript,Google Maps,Google Maps Markers,Directions,我想在我的网站上显示一些类似于谷歌地图的交通方向,所以我试图在同一张地图上显示多种不同类型的方向。对于exmaple,我想展示一个旅程,在那里你可以步行到公交车,坐公交车到其他街道,然后步行到你的最终目的地 为此,我尝试使用自定义标记在同一地图上获取多个方向请求的结果。我有一个名为change_map()的函数,它应该在地图上显示其中一次行程的信息 我有两个问题: 这些标记不会出现在地图上 当fitbounds未注释时,我得到一个堆栈限制超出错误 我是javascript新手,如果我的代码很糟糕
var trip_map
function renderDirections(result) {
var directionsDisplay = new google.maps.DirectionsRenderer;
directionsDisplay.setMap(trip_map);
directionsDisplay.suppressMarkers = true;
directionsDisplay.setDirections(result);
}
function requestDirections(start, end) {
var directionsService = new google.maps.DirectionsService;
directionsService.route({
origin: start,
destination: end,
travelMode: google.maps.DirectionsTravelMode.DRIVING
}, function(result) {
renderDirections(result);
});
}
function change_map(pk) {
var myOptions = {
center: new google.maps.LatLng(-34.397, 150.644),
zoom: 8,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
trip_map = new google.maps.Map(document.getElementById("trip_map"),
myOptions);
var bounds = new google.maps.LatLngBounds();
for (var j = 0; j < latlngpairs.length; j++) {
var GPS = new google.maps.LatLng({lat:latlngpairs[0],
lng:latlngpairs[1]});
var end_marker = new google.maps.Marker({position: GPS,
map: trip_map,
title: "Hello World!"});
bounds.extend(end_GPS);
}
requestDirections(parts[j], parts[j+1]);
}
//trip_map.fitBounds(bounds);
}
var跳闸图
函数renderDirections(结果){
var directionsDisplay=新建google.maps.DirectionsRenderer;
方向显示。设置地图(行程地图);
directionsDisplay.suppressMarkers=true;
方向显示。设置方向(结果);
}
函数请求方向(开始、结束){
var directionsService=新的google.maps.directionsService;
方向服务.路线({
来源:start,
目的地:完,
travelMode:google.maps.Directions travelMode.DRIVING
},函数(结果){
渲染方向(结果);
});
}
功能变更图(pk){
变量myOptions={
中心:新google.maps.LatLng(-34.397150.644),
缩放:8,
mapTypeId:google.maps.mapTypeId.ROADMAP
};
trip\u map=new google.maps.map(document.getElementById(“trip\u map”),
肌肽);
var bounds=new google.maps.LatLngBounds();
对于(var j=0;j
我认为问题在于,您正在将单个对象作为参数传递给循环中的LatLng构造函数
改变
var GPS = new google.maps.LatLng({lat:latlngpairs[0],lng:latlngpairs[1]});
与
希望能解决这个问题。非常感谢!这解决了标记不出现的问题!
var GPS = new google.maps.LatLng(latlngpairs[0],latlngpairs[1]);