2013-11-01 3 views
0

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

ответ

0

Существует несколько библиотек, доступных для создания маркеров с ярлыками, которые могут отображать текст. Вот пара:

http://google-maps-utility-library-v3.googlecode.com/svn/trunk/styledmarker/docs/reference.html

http://sub1.econym.org.uk/gmap/elabel.htm

Используя первую библиотеку, например, вы можете создать маркеры с текстом с кодом, как это:

new StyledMarker({ 
    map: map, 
    position: new google.maps.LatLng(0, 0), 
    styleIcon: new StyledIcon(StyledIconTypes.BUBBLE, {color: "FF0000", text: "Text"}) 
}); 
+0

Отлично! Я попробую это. –

0

Вы можете просто позвонить InfoWindow .open() на каждом из них после его создания. Я предполагаю, что вы уже знаете, как создавать и прикреплять их к событию onclick маркера.

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

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

infowindow.open(map,marker); 
+0

О, я вижу, я попробую это. –

0

Обычно вы бы открыть InfoWindow когда 'click' событие срабатывает на маркер. Просто отключайте событие 'click' для события 'mouseover', чтобы достичь ожидаемого результата.

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

См here для справки (прокрутите вниз до раздела События, чтобы увидеть список поддерживаемых событий на маркеры).

+0

Могу ли я сделать это без каких-либо событий? Я хочу, чтобы он появился на карте, не делая ничего. –

+0

В этом случае вам нужно будет сделать то, что предложил @ Seano666. Это откроет инфо-окно без каких-либо событий. –

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