2016-03-31 2 views
0

Я знаю, что есть много вопросов относительно одного и того же названия, но, к сожалению, я еще не нашел рабочего решения, поэтому я отправляю другой.Google Map не загружается после отправки страницы

Я пытаюсь загрузить простейший вид карты Google и вообще не загружается при загрузке страницы или после отправки формы. однако, когда я обновляю страницу, она всегда загружается должным образом.

код:

<script type="text/javascript" src="//maps.google.com/maps/api/js?sensor=false"></script> 

<div class="map-container"> 
    <div id="map" ></div> 
</div> 

<style type="text/css"> 
    .map-container{width: 100%;height: 400px;} 
    #map{overflow: hidden;position: relative;width: 100%;height: 100%;} 
</style> 

<script type="text/javascript"> 
    var map = new google.maps.Map(document.getElementById('map'), { 
     zoom: 2, 
     minZoom:1, 
     center: new google.maps.LatLng(15, 0), 
     mapTypeId: google.maps.MapTypeId.TERRAIN 
    }); 

    /* I have already tried this code as well without success 
    google.maps.event.addDomListener(window, 'resize', function() { 
     var center = map.getCenter(); 
     map.setCenter(center); 
    }); 
    google.maps.event.trigger(map, "resize"); 
    */ 
</script> 

, когда я проверил консоль я не видел каких-либо ошибок, однако есть предупреждение для # не-API-ключей, так как я нахожусь в стадии разработки, я не забочусь столько.

после подачи или загрузки страницы: after submission or page loading

после страницы освежающим: after page refreshing

Любая помощь будет высоко оценен.

Заранее благодарен.

+2

Нам нужно будет увидеть полную страницу, но если ваш сценарий выложен как фрагмент, у него есть хорошие шансы на неудачу. Css должен быть в голове, html в теле и javascript перед закрывающим тегом body. Просто проверьте – lucas

+0

, что имеет смысл, да, я не правильно разместил код. Я попробую это –

+0

, это поможет уменьшить ошибку, но не исправить 100%. потому что еще иногда это не загрузка карты. Должен сказать, что он уменьшает частоту ошибок –

ответ

0

Пожалуйста, убедитесь, что вы измените

<script type="text/javascript" src="//maps.google.com/maps/api/js?sensor=false"></script> 

в

<script type="text/javascript" src="https://maps.google.com/maps/api/js?sensor=false"></script> 

и добавить свои скрипты в вашем заголовке между <head></head>. Я считаю, что он может решить вашу проблему.

+0

он не работает для меня –

+0

Можете ли вы скопировать вставку с ошибкой, отображаемой на консоли браузера, до обновления? – Achraf

+0

нет ошибки, но предупреждение указано ниже, –

1
<scrip src="http://maps.google.com/maps?file=api&amp;v=2&amp; 
    key=APKEY&sensor=false" 
    type="text/javascript"> 
</script> 
0

при загрузке страницы, которую вызывает сценарий. после этого скрыть и показать скрипт он не будет выполнен. Изменить сценарий как этого

<script type="text/javascript"> 
    function loadMap(){ 
     var map = new google.maps.Map(document.getElementById('map'), { 
      zoom: 2, 
      minZoom:1, 
      center: new google.maps.LatLng(15, 0), 
      mapTypeId: google.maps.MapTypeId.TERRAIN 
     }); 
    } 
    /* I have already tried this code as well without success 
    google.maps.event.addDomListener(window, 'resize', function() { 
     var center = map.getCenter(); 
     map.setCenter(center); 
    }); 
    google.maps.event.trigger(map, "resize"); 
    */ 
</script> 

вызова функции loadMap() после отправки формы.

Смежные вопросы