0

我正在使用 JavaScript Google API 为我的网站构建地图(适用于平板电脑,不适用于 PC)

我从 .NET 文档中获取所有标记;

我想制作一个新的自定义控件,当用户选择它时,他将能够单击地图上的某个点并将坐标获取到文本字段。

所以我知道如何制作一个新控件,并且我知道如何点击地图中的某个点并获取坐标:

当我单击时,我得到latand long

google.maps.event.addListener(map, "rightclick", function(event) {
    var latFromMap = event.latLng.lat();
    var lngFromMap = event.latLng.lng();
    // populate yor box/field with lat, lng
    document.getElementById("lat").value = latFromMap;
    document.getElementById("long").value = lngFromMap;
});

并进行控制(这将使我们回到中心):

google.maps.event.addDomListener(outer, 'click', function() {
  map.setCenter(getcenter)
});

现在。我想连接它们。所以只有当我点击控件时,我才能在某个时候检查纬度/经度。

4

1 回答 1

1

您可以按照此处所述创建一个新的 styledMapType (您不需要样式,只需创建 mapType 并将其添加到控件中)。

当您这样做时,您会一次获得 2 个结果,这是您的项目所需要的:控件,以及您可以每次检查以确定控件是否处于活动状态的属性,mapTypeId

应用点击会很容易:

google.maps.event.addListener(map, 'click', function() {
  if(this.mapTypeId=='mapTypeIdOfTheStyledMap'){
    //execute click-action
  }
});

演示:http: //jsfiddle.net/doktormolle/kbXGd/

于 2013-02-05T09:37:12.703 回答