Я использую API-интерфейс google map v3, и у меня есть проблема.
Мне нужно отобразить их с несколькими картами, и я не знаю количество карт.
Здесь код кода PHP:
<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?key=AIzaSyA5DRxSgUpWIfkLYULGijHXFQdogRElRIg&sensor=false"> </script> <?php for ($i = 1; $i <= 4; $i++) { echo "map n:" . $i . "<br/>"; ?><script> function initialize(ltd,lgd) { var myOptions = { center: new google.maps.LatLng(ltd, lgd ), zoom: 15, panControl: false, zoomControl: false, mapTypeControl: false, scaleControl: false, streetViewControl: false, overviewMapControl: false, mapTypeId: google.maps.MapTypeId.ROADMAP }; var map = new google.maps.Map(document.getElementById("map_canvas<?php echo $i ?>"), myOptions); google.maps.event.addListener(map, 'click', function(event) { placeMarker(event.latLng); }); var marker; marker = new google.maps.Marker({ position: new google.maps.LatLng(ltd, lgd), map: map }); } </script> <?php echo "<body onload='initialize(36.835769,10.247693)'>"; ?> <div id="map_canvas<?php echo $i ?>" style="margin-top:18px; width: 136px; height: 136px;"></div> <?php } ?>
Спасибо за любую помощь 🙂
Вы создаете функцию инициализации несколько раз, что бесполезно, функция будет перезаписываться каждый раз.
Используйте функцию только 1 раз и передайте идентификатор карты в качестве аргумента:
<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?sensor=false"> </script> <script> function initialize(ltd,lgd,map) { var myOptions = { center: new google.maps.LatLng(ltd, lgd ), zoom: 15, panControl: false, zoomControl: false, mapTypeControl: false, scaleControl: false, streetViewControl: false, overviewMapControl: false, mapTypeId: google.maps.MapTypeId.ROADMAP }; var map = new google.maps.Map(document.getElementById(map), myOptions); google.maps.event.addListener(map, 'click', function(event) { placeMarker(event.latLng); }); var marker; marker = new google.maps.Marker({ position: new google.maps.LatLng(ltd, lgd), map: map }); } </script> <?php for ($i = 1; $i <= 4; $i++) { echo "map n:" . $i . "<br/>"; ?> <div id="map_canvas<?php echo $i ?>" style="margin-top:18px; width: 136px; height: 136px;"></div> <script> google.maps.event .addDomListener(window, 'load', function() { initialize(36.835769, 10.247693, 'map_canvas<?php echo $i;?>')}); </script> <?php } ?>