使用Firefox时,标记标题仅出现在鼠标悬停的第一个标记上。任何后续的鼠标都没有产生标题。标题适用于Chrome,IE等。
此前有几个问题。 (见Google Maps Marker title no longer appears as tooltip on hover
答案表明这是api的实验版本中的一个问题。
gmaps api问题https://code.google.com/p/gmaps-api-issues/issues/detail?id=6931是相关的。
如附带的jFiddle所示,问题未必通过使用& v = 3 来解决。
我错过了什么吗?
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>Titles Fail</title>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script src='https://maps.googleapis.com/maps/api/js?v=3&sensor=false'></script>
<script type="text/javascript">
function mapDisplay(){
var locations = [
[-42.0, 147.0, "marker 1"],
[-42.3, 147.9, "marker 2"],
[-42.2, 147.45, "marker 3"],
[-42.8, 147.9, "marker 4"]
];
$("#map").css({'height': '600px'});
var map = new google.maps.Map(document.getElementById('map'), {
mapTypeId: google.maps.MapTypeId.ROADMAP
});
var marker, point;
var bounds = new google.maps.LatLngBounds();
for (var i = 0; i < locations.length; i++) {
point = new google.maps.LatLng(locations[i][0], locations[i][4]);
marker = new google.maps.Marker({
position: point,
map: map,
title: locations[i][5]
});
bounds.extend(marker.position);
}
map.fitBounds(bounds);
if(map.getZoom()> 10){
map.setZoom(10);
}
}
</script>
</head>
<body onload="mapDisplay()">
<div id="map" style="height: 90%; width: 90%;"></div>
</body>
</html>
答案 0 :(得分:1)
这是一个API版本问题。 "frozen version" (currently v3.16):
<script src='https://maps.googleapis.com/maps/api/js?v=3.0&sensor=false'></script>
修复它(至少对我而言)
current issue in the issue tracker(投票表示兴趣/跟随状态)
答案 1 :(得分:0)
此问题在Firefox 39中仍然有效,但现在mousover addListener事件也存在问题。
在标记选项中添加“optimized:false” - 如RoyHB所述 - 不仅解决了标题问题,还解决了鼠标悬停addListener事件的问题。