【问题标题】:How do I make markers appear on a Google Fusion Tables layer using GMaps JS API?如何使用 GMaps JS API 使标记出现在 Google Fusion Tables 图层上?
【发布时间】:2014-09-02 23:17:49
【问题描述】:

我有一个带有 Fusion Tables 图层的 Google 地图对象。我正在尝试这样做,以便当您单击 FT 图层时,您会在单击的位置看到一个标记。我编写的代码可以获取您单击的位置的纬度和经度。我还编写了应该设置标记位置的代码,但它不起作用。

见下文...

google.maps.event.addListener(layer,'click',function(e){
    var clickedLatLng = {
        lat: e['latLng']['B'],
        lng: e['latLng']['k']
    }

    var myLatLng = new google.maps.LatLng(clickedLatLng['lat'],clickedLatLng['lng'])

    var marker = new google.maps.Marker({
        position: myLatLng,
        map: gmap
    });

    marker.setMap(gmap);
});

如何使标记出现?

【问题讨论】:

标签: javascript google-maps google-maps-api-3 google-fusion-tables


【解决方案1】:

您的代码(当前)有效,但结果不理想。

属性e['latLng']['B']e['latLng']['k'] 没有记录,你不应该尝试访问它们,因为属性的名称(Bk)不稳定(见Something happened to my google map api script)。

你已经切换了经纬度,标记会出现,但不会出现在点击的地方(将地图缩小到0,你会在某个地方看到他)

无需新建LatLnge.latLng已经是google.maps.LatLng,可以直接使用:

  google.maps.event.addListener(layer,'click',function(e){

    new google.maps.Marker({
        position:e.latLng,
        map: this.getMap()
    });

  });

【讨论】:

    猜你喜欢
    • 2013-10-18
    • 2013-01-30
    • 2011-09-18
    • 2012-06-26
    • 1970-01-01
    • 2014-10-11
    • 2014-03-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多