Задать вопрос
sabramovskikh
@sabramovskikh

Как нормально вставить гугл маршрут?

Есть маршрут Пытаюсь вставишь его через iframe на на сайт.
Открываю сайт все нормально. Обновляю страницу делается вот так
У меня несколько карт (от 1 до N).

Пытался через gmaps.js прикрутить маршруты kml к карте, но проблема такая: блоки с картой разворачиваются, по умолчанию display:none. Первый блок при развороте первую карту нормально видно, второй не нормально
Код
var map, infoWindow;
    
    $('.splav_block-item--right--more').on('click', function (e) {
        
    
        
        var element_id = $(this).data("dataid");
        
        if($('#mapway_'+element_id).length) {
            
        var kml_id = $('#mapway_'+element_id).data("kml");
        
                  infoWindow = new google.maps.InfoWindow({});

                   map = new GMaps({
                        el: '#mapway_'+element_id,
                        width: '100%',
                        height: 500,
                        lat: 55.178476,
                        lng: 58.696808,
                        mapType: 'satellite',
                        scrollwheel: false,
                        zoom: 13
                    });
                    
                    map.loadFromKML({
                    url: 'http://www.google.com/maps/d/kml?mid='+kml_id,
                    suppressInfoWindows: true,
                    events: {
                      click: function(point){
                        infoWindow.setContent(point.featureData.infoWindowHtml);
                        infoWindow.setPosition(point.latLng);
                        infoWindow.open(map.map);
                      }
                    }
                  });
                  
              }
        console.log(element_id);
        $(".detail_text_"+element_id).slideToggle();
        $(this).hide();
        e.preventDefault();

    });

Возможно косяк в переменной map, нельзя вторую карту повесить туда, подскажите заодно как создать переменную типа "map_"+element_id из строки
  • Вопрос задан
  • 2453 просмотра
Подписаться 1 Оценить Комментировать
Решения вопроса 1
sabramovskikh
@sabramovskikh Автор вопроса
$('.splav_block-item--right--more').on('click', function (e) {
        
    
        
        var element_id = $(this).data("dataid");
        
        $(".detail_text_"+element_id).slideToggle();
        $(this).hide();
        
        
        var e_id =element_id;
        
        if($('#mapway_'+e_id).length) {
            
        var kml_id = $('#mapway_'+e_id).data("kml");
        
                  infoWindow[e_id] = new google.maps.InfoWindow({});

                   map[e_id] = new GMaps({
                        el: '#mapway_'+e_id,
                        lat: 55.184062,
                        lng: 58.68396,
                        mapType: 'hybrid',
                        scrollwheel: false,
                        zoom: 14
                    });
                    
                    
                    map[e_id].loadFromKML({
                    url: 'http://www.google.com/maps/d/kml?mid='+kml_id,
                    suppressInfoWindows: true,
                    events: {
                      click: function(point){
                        infoWindow[e_id].setContent(point.featureData.infoWindowHtml);
                        infoWindow[e_id].setPosition(point.latLng);
                        infoWindow[e_id].open(map[e_id].map);
                      }
                    }
                  });
                  
              }
        
        
        //отключим скролл к верху документа
        e.preventDefault();

    });
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы