在普通的谷歌地图上,我可以使用以下代码获取并显示鼠标点的地理坐标:
google.maps.event.addListener(map, "mousemove", function(event) {
document.getElementById('message').innerHTML =
'Geographical Coordinates: ' + event.latLng.lat() + ', ' + event.latLng.lng();
});
如果我使用Google方向api计算路线并将鼠标移到显示的路线上,则不会触发“mousemove”事件。当鼠标指针在路线上时,如何获取坐标?
我在jsfiddle上有一个正在运行的例子。当您使用鼠标按照路线时,坐标不会更新。
答案 0 :(得分:1)
这是在光标位置移动bootstrap工具提示的示例:
google.maps.event.addListener(poly,"mousemove",function(e){
var _tooltipPolys = $("#tooltipPolys");
if(_tooltipPolys.length == 0) {
_tooltipPolys = $(' \
<div id="tooltipPolys" class="tooltip top" role="tooltip"> \
<div class="tooltip-arrow"></div> \
<div class="tooltip-inner"></div> \
</div> \
');
$("body").append(_tooltipPolys);
$("div.tooltip-inner", _tooltipPolys).text(this.title);
_tooltipPolys.css({
"opacity": ".9",
"position":"absolute"
});
}
var pageX = event.pageX;
var pageY = event.pageY;
if (pageX === undefined) {
pageX = event.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;
pageY = event.clientY + document.body.scrollTop + document.documentElement.scrollTop;
}
// Update the current tooltip position each time the cursor moves
_tooltipPolys.css({
"top":(pageY - _tooltipPolys.height() - 10)+"px",
"left":(pageX - (_tooltipPolys.width() / 2))+"px"
});
});
答案 1 :(得分:0)
我知道将鼠标悬停事件添加到路径本身的唯一方法是绘制折线(以便您可以访问它),然后向其添加鼠标悬停事件。