powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / API Яндекс карт
1 сообщений из 1, страница 1 из 1
API Яндекс карт
    #39912504
Pelsh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
На сайте имеется модуль для расчета стоимости доставки, основанный на АПИ Яндекс карт.

в хеадер вставлен следующий код:
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
<script type="text/javascript">
ymaps.ready(init);

function init() {
    // Стоимость за километр.
        var DELIVERY_TARIFF = 55,
    // Минимальная стоимость.
        MINIMUM_COST = 1500,
        myMap = new ymaps.Map('map', {
            center: [60.906882, 30.067233],
            zoom: 9,
            controls: []
        }),
    // Создадим панель маршрутизации.
        routePanelControl = new ymaps.control.RoutePanel({
            options: {
                // Добавим заголовок панели.
                showHeader: true,
                title: 'Расчёт доставки',
                maxWidth: 300
            }
        }),
        zoomControl = new ymaps.control.ZoomControl({
            options: {
                size: 'small',
                float: 'none',
                position: {
                    bottom: 145,
                    right: 10
                }
            }
        });
    // Пользователь сможет построить только автомобильный маршрут.
    routePanelControl.routePanel.options.set({
        types: {auto: true}
    });

    // Если вы хотите задать неизменяемую точку "откуда", раскомментируйте код ниже.
    routePanelControl.routePanel.state.set({
        fromEnabled: false,
        from: 'Малое Карлино'
     });
     


    myMap.controls.add(routePanelControl).add(zoomControl);
    
    //myMap.events.add('click', function (e) {
       
    //        var coords = e.get('coords');
   //         var coords_txt = [
   //                 coords[0].toPrecision(6),
   //                 coords[1].toPrecision(6)
   //                 ].join(', ');
                    
   //                 alert( "Проверка: ljcnfdrf = " + coords);
      
    //});

    // Получим ссылку на маршрут.
    routePanelControl.routePanel.getRouteAsync().then(function (route) {

        // Зададим максимально допустимое число маршрутов, возвращаемых мультимаршрутизатором.
        route.model.setParams({results: 1}, true);

        // Повесим обработчик на событие построения маршрута.
        route.model.events.add('requestsuccess', function () {

            var activeRoute = route.getActiveRoute();
            if (activeRoute) {
                // Получим протяженность маршрута.
                var length = route.getActiveRoute().properties.get("distance");
                
                    // Вычислим стоимость доставки.
                    //price = calculate(Math.round(length.value / 1000)),
                    //price_pre = calculate(Math.ceil(length.value/10000)*10);
                    

                    
                    
                    
                    var rasstoyanie=length.value/1000;
                    if (rasstoyanie < 200)
                    {
                        //alert( "Привет1 = " + rasstoyanie);
                    var price = calculate(Math.ceil(length.value/10000)*10);
                    
                    }
                    else
                     {
                        //alert( "Привет2 = " + rasstoyanie);
                            var price=Math.ceil((4000+((rasstoyanie*2)*10))/10)*10;
                     }
                // Создадим макет содержимого балуна маршрута.
                    
                    balloonContentLayout = ymaps.templateLayoutFactory.createClass(
                        '<span>Расстояние: ' + length.text + '.</span><br/>' +
                        '<span style="font-weight: bold; font-style: italic">Стоимость доставки: <g id=dostavka>' + price + '</g> руб.</span><br/>' +
                        '<hr><span>Цена указана для автомобиля 30 м&sup3;<br>Из расчета до 40 панелей за 1 доставку');
                // Зададим этот макет для содержимого балуна.
                route.options.set('routeBalloonContentLayout', balloonContentLayout);
                // Откроем балун.
                activeRoute.balloon.open();
            }
        });

    });
    

map.geoObjects.each(function (geoObject) {
  if (geoObject instanceof ymaps.Placemark) {
    console.log(geoObject.geometry.getCoorditanes())
    alert(geoObject.geometry.getCoorditanes());
  }
});
    

    // Функция, вычисляющая стоимость доставки.
    function calculate(routeLength) {
        return Math.max(routeLength * DELIVERY_TARIFF, MINIMUM_COST);
    }
}
  </script>




вопрос в следующем как мне в баллун всплывающий на карте вставить координаты точки??
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / API Яндекс карт
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]