Подтвердить что ты не робот

По умолчанию карты Google открывают информационное окно?

В следующем примере показан простой маркер (стандартный значок) на картах Google для местоположения, а при нажатии на значок открывается информационное окно. Могу ли я открыть информационное окно по умолчанию, чтобы мне не нужно было щелкнуть значок, чтобы открыть?

var myLatlng = new google.maps.LatLng(-25.363882,131.044922);
    var myOptions = {
    zoom: 4,
    center: myLatlng,
    mapTypeId: google.maps.MapTypeId.ROADMAP
    }

    var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);

    var contentString = '<div id="content">'+
        '<div id="siteNotice">'+
        '</div>'+
        '<h2 id="firstHeading" class="firstHeading">Uluru</h2>'+
        '</div>';

    var infowindow = new google.maps.InfoWindow({
        content: contentString
    });

    var marker = new google.maps.Marker({
        position: myLatlng,
        map: map,
        title:"Uluru (Ayers Rock)"
    });

    google.maps.event.addListener(marker, 'click', function() {
    infowindow.open(map,marker);
    });
4b9b3361

Ответ 1

Если вы хотите показать открытое по умолчанию информационное окно без щелчка, просто добавьте новый код, как показано ниже:

Ваш код:

google.maps.event.addListener(marker, 'click', function() {
        infowindow.open(map,marker);
});

Итак, у нас есть новый код:

google.maps.event.addListener(marker, 'click', function() {
   infowindow.open(map,marker);
});

infowindow.open(map,marker);

Как вы можете видеть, мы просто добавляем небольшой код строки с помощью infowindow.open(map,marker);

Ответ 2

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

infowindow.open(map, marker);

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

Способ, который работал у меня, - это обернуть его в прослушиватель к событию с разбивкой на карте

google.maps.event.addListenerOnce(map, 'tilesloaded', function() {
  infowindow.open(map, marker);
});

Ответ 3

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

Итак, как вы настроите карту так, чтобы информационное окно полностью отображалось? Прочитай это: Карты Google: карта автоцентра при нажатии маркера

Если вы хотите, чтобы кнопка нажата, где она находится, и не сдвигайте карту, прочтите следующее: Карты Google: как предотвратить перемещение карты InfoWindow

Надеюсь, что это поможет людям сделать следующий шаг.

Ответ 4

Ниже код работает отлично для меня:

Изменить широту, долготу, Контент и картуд (с вашим пользовательским идентификатором div):

<script type="text/javascript">

function initialize() {
    var myLatlng = new google.maps.LatLng(48.206615,13.487928);
    var mapOptions = {
        zoom: 16,
        center: myLatlng,
        mapTypeId: google.maps.MapTypeId.ROADMAP
    }
    var map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);

    var contentString = '<p><strong>Bahnhofstraße 32</strong></p><p>Bahnhofstraße 32, 4910 Ried im</p><p>Innkreis, Austria</p>';

    var infowindow = new google.maps.InfoWindow({
      content: contentString
  });


    var marker = new google.maps.Marker({
        position: myLatlng,
        map: map,
        title: 'Bahnhofstraße 32'
    });

    google.maps.event.addListener(marker, 'click', function() {
    infowindow.open(map,marker);
  });
  // show map, open infoBox 
        google.maps.event.addListenerOnce(map, 'tilesloaded', function() {
          infowindow.open(map, marker);
        });

}

google.maps.event.addDomListener(window, 'load', initialize);

    </script>