При разных растояниях, разные события
Это кусок скрипта gmap:
function calcRoute() { var start = document.getElementById('start').value; var end = document.getElementById('end').value; var waypts = []; var checkboxArray = document.getElementById('waypoints'); for (var i = 0; i < checkboxArray.length; i++) { if (checkboxArray.options[i].selected == true) { waypts.push({ location:checkboxArray[i].value, stopover:true}); } } var request = { origin: start, destination: end, waypoints: waypts, optimizeWaypoints: true, travelMode: google.maps.TravelMode.DRIVING, unitSystem: google.maps.UnitSystem.IMPERIAL }; directionsService.route(request, function(response, status) { if (status == google.maps.DirectionsStatus.OK) { directionsDisplay.setDirections(response); var route = response.routes[0]; var summaryPanel = document.getElementById('directions_panel'); summaryPanel.innerHTML = ''; // For each route, display summary information. for (var i = 0; i < route.legs.length; i++) { var routeSegment = i + 1; summaryPanel.innerHTML += route.legs[i].distance.value + '<br><br>'; } } }); При нажатии на кнопку ( calcRoute() )он выводит резултаты подщета растояния между тремя точками. То есть в резултате мы получаем две цыфры в метрах ( route.legs[i].distance.value ). Как сделать так, чтоб если эта цыфра меньше, скажем, 5000, то открывалась другая страница, если больше, выводилось сообщение. Прошу ногами не пинать, я только постигаю премудрости JavaScript. |
С выводом сообщения вроде разобрался. Там все просто. Добавил это:
if (route.legs[i].distance.value > 128748) {alert("sorry");} else {window.open('message.html', '_self');}; Но возникла другая проблема. Цифры получаем две и если первая менше требуемого значения открываетса страница message.html, а мне надо, чтоб если хоть одна цыфра больше чем надо, выводилось предупреждение. Нашел решение. Правда не очень изящное, но оно делает то что в данный момент надо. var a = route.legs[0].distance.value; var b = route.legs[1].distance.value; if (a > 128748) {alert("sorry");} else if(b > 128748) {alert("sorry2");} else {window.open('мессаге.html', '_self');}; |
Часовой пояс GMT +3, время: 00:09. |