【发布时间】:2012-03-07 15:16:14
【问题描述】:
我已经实现了一个带有标记和标记上的侦听器的地图。
...
google.maps.event.addListener(marker,'rightclick',function(event) {showRightClick(event, map, marker);});
...
// Show Right Click Menu
function showRightClick(event, map, marker) {
var point = map.getCanvasProjection().fromLatLngToContainerPixel(event.latLng);
var scriptInterface = getHeader();
var screenX = point.x + window.screenLeft;
var screenY = point.y + window.screenTop;
scriptInterface.rightClick(marker.name, marker.objectid, marker.dimobjectid, screenX, screenY);
}
但是,当监听器触发时,事件的经纬度是标记的,而不是鼠标的。所以,我试图显示的右键菜单出现在标记的底部,而不是鼠标位置。
有人知道这是错误还是预期行为?
【问题讨论】:
-
根据鼠标相对于页面的绝对位置显示菜单并完全忽略地图(标记对象除外)不是更容易吗?另外.. MAP 的右键单击是鼠标的位置.. 标记上的任何事件将始终是标记的位置。