Несколько маркеров работают на моем локальном сервере, но маркеры не работают на моем живом сайте.http://www.sierracrestweb.com/dev/ - PullRequest
0 голосов
/ 05 октября 2018

Вот код ниже, отлично отображает фиолетовый значок на моем локальном сервере, но маркеры не отображаются на моем сайте, я ищу в Google и пробую альтернативный метод, но все еще сталкиваюсь с этой проблемой, я думаю, это из-за многократной загрузки ключа APIошибки, но если это Как устранить эту ошибку?потому что я уже удалил весь скрипт, но все еще сталкиваюсь с проблемой.

<script>
var map;
var marker;
var infowindow;
var red_icon =  'http://maps.google.com/mapfiles/ms/icons/red-dot.png' ;
var purple_icon =  'http://maps.google.com/mapfiles/ms/icons/purple-dot.png';
    var locations = <?php get_all_locations() ?>;

    function initMap() {
    var america = {lat: 37.09024, lng: -95.712891};
    infowindow = new google.maps.InfoWindow();
    map = new google.maps.Map(document.getElementById('map'), {
        center: america,
        zoom: 7
    });
  var infowindow = new google.maps.InfoWindow();

   var marker, i;

    var i ; 
    for (i = 0; i < locations.length; i++) {

        marker = new google.maps.Marker({
            position: new google.maps.LatLng(locations[i][1], locations[i] 
    [2]),
            icon : purple_icon,
            map: map


        });
 google.maps.event.addListener(marker, 'click', (function(marker, i) {
    return function() {
      infowindow.setContent(locations[i][0]);
      infowindow.open(map, marker);
    }
  })(marker, i));
    }
 }

  <script async defer
  src="https://maps.googleapis.com/maps/api/js? 
  language=en&key=APIKEY&callback=initMap">
  </script>

1 Ответ

0 голосов
/ 05 октября 2018

Если создание маркера работает на вашем локальном компьютере, но не на сервере, то это, вероятно, не связано с самим кодом.

Я думаю, что проблема в этой строке.

var locations = <?php get_all_locations() ?>;

Скорее всего, эта функция возвращает пустой массив, из-за которого на карте не отображаются маркеры.

Попробуйте распечатать значение возвращенного массива в консоли, чтобы убедиться, что вы действительно получаете правильный массив местоположений.

var locations = <?php get_all_locations() ?>;
console.log(locations);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...