подгрузка страниц AJAX и гугл карта, карта не подгружается
Помогите пожалуйста! , у меня все содержимое страничек сайта подгружается динамически с помощью AJAX. Тоесть я выбираю в меню "Контакты" или "Портфолио", и сайт не обновляется а просто в контейнере меняется содержимое.
1 в 1 как в этом уроке то есть у меня в div блок все подгружается <div id="content"> <!--содержимое --> </div> И тут такая проблемма, я вставил на страничку "Контакты" гугл карту, если открыть страницу "Контакты" напрямую, тоесть "..\testweb\contact.html" то карта работает, но если перейти на другую страницу к примеру "Портфолио" а потом обратно в "Контакты" то карта перестает работать (вообще не отображается) что бы она загрузилась нужно в браузере обновить страницу.. (если на сайт перейте с index.html и перейти на вкладку "Контакты" с гугл картой то само собой она то же не отображается) И вот вопрос, что нужно дописать в скрипте что бы содержимое с картой обновлялось? Карту я взял от сюда - карта (как я написал выше, когда она не отображаеться то просто розовый фон) Ну и код целиком <div id="content"> <div id="page"> <div class="gMap-holder" id="map_canvas"></div> <script type="text/javascript"> function loadScript() { var script = document.createElement("script"); script.type = "text/javascript"; script.src = "http://maps.googleapis.com/maps/api/js?sensor=true&callback=initializeMap" ; document.body.appendChild(script); } if (window.addEventListener) window.addEventListener("load", loadScript, false); else if (window.attachEvent) window.attachEvent("onload", loadScript); function initializeMap(){ var myLatlng = new google.maps.LatLng(44.948498, 34.088227); var myOptions = { zoom: 17, scrollwheel: false, center: myLatlng, mapTypeId: google.maps.MapTypeId.ROADMAP, mapTypeControlOptions: { position: google.maps.ControlPosition.BOTTOM_LEFT } } var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions); var markerImage = new google.maps.MarkerImage( 'images/bg-num.png', new google.maps.Size(33,33), new google.maps.Point(0,0), new google.maps.Point(0,33) ); var markerImageHover = new google.maps.MarkerImage( 'images/bg-num.png', new google.maps.Size(33,33), new google.maps.Point(0,33), new google.maps.Point(0,33) ); var marker = new google.maps.Marker({ icon: markerImage, position: myLatlng, map: map, title:"test-CRIMEA" }); var content = document.createElement('div'); content.innerHTML = "<strong>Мояковского,12</strong>CRIMEA"; var infowindow = new google.maps.InfoWindow({ content: content }); google.maps.event.addListener(marker, 'click', function() { infowindow.open(map, marker); }); google.maps.event.addListener(marker, 'mouseover', function() { marker.setIcon(markerImageHover); }); google.maps.event.addListener(marker, 'mouseout', function() { marker.setIcon(markerImage); }); } </script> </div> </div> |
возможно причина в том что к ккарте просто не прилетает событие window.load? его же не происходит при динамической подкгузке содержимого.
|
Часовой пояс GMT +3, время: 14:36. |