【发布时间】:2013-01-02 19:24:54
【问题描述】:
我有很多标记。
在左边我有谷歌地图上实际标记的标记抽象列表。
我决定使用折线
var flightPlanCoordinates = [
new google.maps.LatLng(near_cursor_lat, near_cursor_lon),
new google.maps.LatLng(marker_lat, marker_lon)
];
var flightPath = new google.maps.Polyline({
path: flightPlanCoordinates,
strokeColor: "#FF0000",
strokeOpacity: 1.0,
strokeWeight: 2
});
flightPath.setMap(map);
这个想法是用户将鼠标指向左侧的标记抽象框,然后他在地图上显示从标记抽象到实际标记的线。除了STARTING POINT(图片上的红点)之外,我已经拥有了所有东西
当鼠标指向左侧的框时,如何找到位于鼠标指针旁边的起始纬度/经度
一些细节: 当鼠标指向 sais PERSON1 的框时,我想要第一个红点的坐标。当鼠标指向 sais PERSON2 的框时,我想要第二个红点的坐标。等等。有一个技巧部分 - 左框位于谷歌地图 div 之外;另外,如果PERSONS的盒子很多,左边的div会允许上下滚动这些人,所以persons box和红点之间的垂直关联是动态的。
理论上,我认为,我需要一个在我指向其中一个框时触发的事件。当 even 被触发时,我需要测量从顶部到鼠标指针的垂直距离(以像素为单位)。然后,当我有垂直距离时,我需要执行一些操作来测量谷歌地图上相同的垂直距离,并在地图上以纬度/经度坐标获得该点。
【问题讨论】:
-
当您将鼠标悬停在侧边菜单上时,是否有任何理由不希望地图在标记上平移和居中?
-
它已经通过“中心图标”存在
-
我不明白你在问什么。尝试更好地重新表述您的问题。
-
那些东西或按钮,你称之为“标记抽象”,它们是什么类型的对象?它们是叠加层吗?它们是在地图顶部还是在地图旁边?从您的图像来看,所有红点的经度都是相同的,而纬度是地图顶部的纬度减去按钮的高度乘以位置。(按钮 1、按钮 2 等)。
-
这就是您要说的:当您将鼠标悬停在 person 3 框上时,应该从地图上 person 3 框旁边的点开始绘制一条线,直到地图上的相应标记?跨度>
标签: javascript google-maps-api-3