我想显示标记旁边位置的名称,如下面的屏幕截图所示。目前,我还不需要在Google地图中显示其他详细信息。我只关心酒店的名称应该与标记一起出现。
示例:Courtyard Marriott Hotel - 显示名称的Google地图链接。
我创建了演示jsFiddle(没有显示标签)
var googleMap;
var hotelLocation = {
lat: 43.681592,
lng: -79.713612
};
var mapCenter = hotelLocation; //{ lat: 43.690497, lng: -79.966831 };
google.maps.event.addDomListener(window, 'resize', function() {
//https://stackoverflow.com/questions/8792676/center-google-maps-v3-on-browser-resize-responsive
var center = googleMap.getCenter();
google.maps.event.trigger(googleMap, "resize");
googleMap.setCenter(center);
});
function InitializeGoogleMaps() {
//http://www.latlong.net/convert-address-to-lat-long.html
//90 Biscayne Crescent, Brampton, ON - Address of Hotel - { lat: 43.681592, lng: -79.713612 };
googleMap = new google.maps.Map(document.getElementById('map'), {
zoom: 14,
center: mapCenter
});
var marker = new google.maps.Marker({
position: hotelLocation,
map: googleMap,
title: 'Courtyard by Marriott'
});
}
InitializeGoogleMaps();
我已经通过了许多搜索术语(因为我不确定这个标签的正确用词是什么,并且通过了Maps Marker API)但是到目前为止还没有运气。我认为下面的线程似乎是在同一条线上,但我希望在谷歌地图中内置支持,而不是去额外的lib。
答案 0 :(得分:1)
更有可能发表评论,但请原谅(我还不能发表评论;))
定位可以通过保证金完成,而不是按标记大小计算。
这是评论https://stackoverflow.com/a/34145265/2686510
的ndd jsFiddle的微小更新有人会发现让css自由标记位置很有帮助。
.map-marker-label {
position: absolute;
color: red;
font-size: 16px;
font-weight: bold;
/* Use margin to position the text */
/* top, left position is the place of marker position */
margin-top: -45px;
margin-left: 20px;
}
答案 1 :(得分:-1)
您可以使用pixelOffset:
pixelOffset: new google.maps.Size(100,140);
结果将是:
var marker = new google.maps.Marker({
position: hotelLocation,
map: googleMap,
title: 'Courtyard by Marriott',
pixelOffset: new google.maps.Size(100,140);
});