Javascript 刷新更改方向上的航路点
我让自己成为一名路线管理者,有两种选择(如避免通行费、旅行模式、避免高速公路、航路点)和可拖动路线 我创建了Javascript 刷新更改方向上的航路点,javascript,google-maps-api-3,dom-events,Javascript,Google Maps Api 3,Dom Events,我让自己成为一名路线管理者,有两种选择(如避免通行费、旅行模式、避免高速公路、航路点)和可拖动路线 我创建了var lastRequest=[]来存储上次渲染的directionRequest属性 代码如下所示: directionsService.route(request, function(response, status) { if (status == google.maps.DirectionsStatus.OK) { var directions = par
var lastRequest=[]
来存储上次渲染的directionRequest属性
代码如下所示:
directionsService.route(request, function(response, status) {
if (status == google.maps.DirectionsStatus.OK) {
var directions = parseDirections(response, mode, tolls)
directionsDisplay.setDirections(response)
}
});
google.maps.event.addListener(directionsDisplay, 'directions_changed', function() {
refreshReq(directionsDisplay.getDirections())
})
function refreshReq(response)
{
//
}
我一直在寻找一个解决方案,用响应中的新数据刷新更改的方向
我的lastRequest['waypoints']
,这样我的脚本就可以存储waypoints对象,并在我想的任何时候重做lastRequest
当我从response
获取所需的航路点数组时,困难就来了
尝试了两种变体:
lastRequest['waypoints']=响应['routes'][0]['legs'][0]['via_waypoints']
但事实并非如此
下一步是使用新的google.maps.LatLng()
一个接一个地重新生成每个航路点,但由于某些原因,即使在我使用eval()将它们放入数组后,它们仍然无法工作
将“中途停留”更改为false/true,尝试了不同的方法,但什么都没有尝试,一定是遗漏了什么。我通过php生成的点js数组需要从via_waypoints刷新
for (var p in req.routes[0].legs[0].via_waypoints)
points[p]['location'] = req.routes[0].legs[0].via_waypoints[p]
你能回答你自己的问题吗。只需将答案复制粘贴到下面的框中,并标记为已回答:)