【问题标题】:Change icon in Google Fusion Table API using Google Maps API when zoom in/out放大/缩小时使用 Google Maps API 更改 Google Fusion Table API 中的图标
【发布时间】:2013-01-08 18:52:20
【问题描述】:

我正在使用 Google Fusion Table API 和 Google Maps API。多亏了 Google Maps API,我有了我的地图,然后我使用 Google Fusion Table API 创建了一个图层,效果很好。

当我创建层时,我定义标记应该是“small_red”(小红点),thants 也很好用。

var layer = new google.maps.FusionTablesLayer({query: {select: 'coordenadas', from: '1-zmpFV_oI7OBiq3iEyHyze7QBiBDZzdrxby_TYM', where: 'hide!=0'},map: map, suppressInfoWindows: true, styles: [{ markerOptions: {iconName: "small_red" }}]});

现在,正如您在下面看到的,我想在用户放大时将图标更改为“large_red”(谷歌地图的正常图标),并在用户放大时更改回“small_red”(同样是红点)放大。

google.maps.event.addListener(map, 'zoom_changed', function() {
    if(map.getZoom()>14){
        //Change icon to large_red
    } else {
        //Back to small_red
    }
});

最后一个代码识别放大或缩小事件,然后我有一个 if 子句来验证缩放是向上还是向下,然后,问题是,我不知道如何从标记上更改图标地图上的图层。

提前感谢您的帮助。

【问题讨论】:

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


    【解决方案1】:

    我找到了解决方案,很简单:

    google.maps.event.addListener(map, 'zoom_changed', function() {
        if(map.getZoom()>14){
            layer.setOptions({styles: [{markerOptions:{ iconName:"large_red"}},]});
        } else {
            layer.setOptions({styles: [{markerOptions:{ iconName:"small_red"}},]});
        }
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-10-12
      • 2013-01-28
      • 2012-11-16
      • 2014-04-16
      • 1970-01-01
      • 2016-12-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多