"Расстояние от МКАД".
Документация.


Введение

Если вы уже приобрели решение "Расстояние от МКАД", рекомедуем начать с раздела Начало работы.

Если еще не приобрели, то рекомендуем ознакомиться с разделом Примеры использования

Вернуться к презентационной странице

Начало работы #наверх

Чтобы скрипт заработал на вашем сайте, разместите в нужном месте страницы следующий код

									
<script src="http://api-maps.yandex.ru/2.1/?lang=ru_RU" type="text/javascript"></script> <script type="text/javascript" src="mkad.js"></script> <script type="text/javascript"> var mkadMap = new MKAD('map', {searchControl: true}); </script>

Ссылку на файл mkad.js выможете найти в письме об успешной оплате

Примеры #наверх

Простая карта с возможностью найти адрес и получить в ответ расстояние и маршрут от МКАД до него

									
<script src="http://api-maps.yandex.ru/2.1/?lang=ru_RU" type="text/javascript"></script> <script type="text/javascript" src="mkad.js"></script> <script type="text/javascript"> var mkadMap = new MKAD('map', {searchControl: true}); </script>

Интеграция в форму заказа - #наверх

Адрес для расчета расстояния берется из формы заказа. Маршрут отображатеся на карте. Стоимость доставки автоматически подставляется в нужное поле

									
									
									
Товаров в корзине на сумму: 12650 руб
Стоимость доставки: 0 руб
Итого к оплате: 12650 руб
<script src="http://api-maps.yandex.ru/2.1/?lang=ru_RU" type="text/javascript"></script> <script type="text/javascript" src="mkad.js"></script> <script type="text/javascript"> var mkadMap = new MKAD('map', { searchControl: false, mapClick: false, addressInput: "address", cartSumPrice: "cartSumPrice", deliveryPriceResult: "deliveryPrice", totalPriceResult: "totalPrice", price: { cityPrice: 400, km: 30, base: 400, currency: "руб" } }); </script>

Интеграция в форму заказа (javascript) - #наверх

Адрес для расчета посылается в javascript функцию, результат возвращается с помощью callback-функции. Маршрут отображатся на карте

									
									
									
<script src="http://api-maps.yandex.ru/2.1/?lang=ru_RU" type="text/javascript"></script> <script type="text/javascript" src="mkad.js"></script> <script type="text/javascript"> var mkadMap = new MKAD('map', { searchControl: false, mapClick: false, distanceCallback: function(err, distance, htmlDistance) { if (err) { alert(err); return; } var km = Math.round(distance / 1000); var deliveryPrice = km * 30; alert("Расстояние от МКАД: " + km + " км. Стоимость доставки: " + deliveryPrice + " руб."); } }); document.getElementById("addressSearchButton").addEventListener("click", function() { var address = document.getElementById("address").value; if (address && address.length) { mkadMap.getDistanceByAddress(address); } }); </script>

Параметры #наверх

Описание параметров для настройки отображения и поведения.
Параметр Значение по-умолчанию Описание
searchControl true Отображение на карте поля для поиска адреса

Возможные значения:
true отображать
false не отображать
mapClick true Возможность расчета маршрута до точки на карте, по которой щелкнул пользователь

Возможные значения:
true разрешено
false запрещено
routeColor '#1768E4' Цвет маршрута на карте

Возможные значения: цвет в формате подходящем для html
Интеграция с формой заказа без программирования
addressInput не задано id поля ввода, в котором пользователь указывает адрес доставки.
Поиск адреса начинается после того как пользователь внес адрес и убрал фокус с поля ввода (например нажал на кнопку). Используется событие onChange.

Например: <input type="text" id="address" />
addressInput: "address"
cartSumPrice не задано id блока, где отображается сумма заказа без доставки

Например: <span id="cartSumPrice">10000 руб</span>
cartSumPrice: "cartSumPrice"
deliveryPriceResult не задано id блока, где будет отображена рассчитанная стоимость доставки

Например: <span id="deliveryPrice"></span>
deliveryPriceResult: "deliveryPrice"
totalPriceResult не задано id блока, где будет отображена финальная стоимость (сумма заказа + сумма доставки)

Например: <span id="totalPrice"></span>
totalPriceResult: "totalPrice"
price не задано Набор параметров для расчета стоимости доставки
Формула расчета:
base + (расстояние от МКАД в киломиетрах) * km
Параметр Значение по-умолчанию Описание
cityPrice 0 Стоимость доставки до адреса в пределах МКАД
km 0 Стоимость 1 километра доставки за МКАД. Километраж округляется до ближайшего целого
base 0 Фиксированная часть стоимости доставки за МКАД
currency "" Обозначение валюты. Например "руб"
Интеграция с формой заказа с программированием
distanceCallback не задано Функция обратного вызова с результатами расчета расстояния от МКАД
function distanceCallback(err, distance, humanDistance)
Параметр Описание
err Текст ошибки или null
distance Расстояние от МКАД до адреса в метрах
humanDistance "Человекочитаемое" расстояние от МКАД до адреса в метрах (округленное и с указанием единиц). Строка предназначенная для вставки в html
distanceCallbackContext не задано Контекст для вызова функции distanceCallback

Ограничения #наверх

  • При покупке продукт привязывается к домену сайта и предназначен для использования только на нем
  • Продукт использует Яндекс.Карты и вы должны соблюдать их условия использования
  • Яндекс.Карты имеют лимиты на бесплатное использование их API. При достижении этих лимитов решение может перестать быть работоспособным.

Описание программы #наверх

  • Название: скрипт для веб-страницы "Расстояние от МКАД"
  • Описание:
    Cкрипт для веб-страницы реализованный на языке программирования javascript. Основан на Yandex.Maps API.
    Находит и отображает автомобильный машрут от МКАД до указанного адреса или точки на карте и его длину.