API Google Maps Javascript在上下文菜单中调用事件监听器

时间:2015-03-03 17:11:20

标签: javascript jquery google-maps google-maps-api-3

我正在使用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

1 个答案:

答案 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
    });

latilngi是新坐标。当我在地图上右键单击以查看上下文菜单时,我会检索它们。

相关问题