我正在使用Google Maps API V3和我创建的上下文菜单。每当我点击上下文菜单中的菜单时,我想在地图上获得鼠标位置的坐标。除了我不知道如何做到这一点。
这就是我试图做的事情:
contextmenuDir.innerHTML = "<a id='menu1' onclick='google.maps.event.addListener(menu1, 'click', function(event) {
var lat = event.latLng.lat();
var lng = event.latLng.lng();
changeBeginCoords(lat,lng);
});'><div class=context>Direccoes a partir daqui<\/div><\/a>";
有人知道我该怎么做吗?
编辑:好的,我设法进一步推进,现在每当我按上下文菜单的菜单时我都可以进入事件监听器。
var m1 = document.getElementById("menu1");
google.maps.event.addDomListener(m1, "click", function(event) {
var lat = event.latLng.lat();
var lng = event.latLng.lng();
changeBeginCoords(lat,lng);
// populate yor box/field with lat, lng
});
现在可以找出这个错误:
Cannot read property 'lat' of undefined
答案 0 :(得分:1)
好吧,经过一番挖掘,我找到了方法addDomListener。 以下是我的代码最终的结果:
var m1 = document.getElementById("menu1");
google.maps.event.addDomListener(m1, "click", function(event) {
var lat = lati;
var lng = lngi;
changeBeginCoords(lat,lng);
hideContextMenu();
// populate yor box/field with lat, lng
});
lati
和lngi
是新坐标。当我在地图上右键单击以查看上下文菜单时,我会检索它们。