代码之家  ›  专栏  ›  技术社区  ›  tester

如何循环浏览谷歌地图坐标?

  •  0
  • tester  · 技术社区  · 15 年前

    我一直在试图通过这个GPS坐标阵列进行循环,这个阵列可以在谷歌地图上放置插脚。

    这是我的代码: http://pastie.org/466369

    问题出在了 第27~36行 .

    如果我将其更改为以下值,它将在该确切位置放置1个管脚,但我希望它在数组中循环,以便添加多个管脚:

    //var markers = [];
    
        for (var i = 0; i < 1; i++) {
            var point = new GLatLng(39.729308,-121.854087);
            marker = new GMarker(point);
            map.addOverlay(marker);
            markers[i] = marker;
        }
    

    有人知道下面这个版本为什么会被破坏吗?

    var markers = [
    (39.729308,-121.854087),
    (39.0,-121.0)
    ];
    
    for (var i = 0; i < markers.length; i++) {
        var point = new GLatLng(markers[i]);
        marker = new GMarker(point);
        map.addOverlay(marker);
        markers[i] = marker;
    }
    
    1 回复  |  直到 15 年前
        1
  •  2
  •   brianpeiris    15 年前

    首先,下面的代码是不正确的javascript。

    var markers = [
    (39.729308,-121.854087),
    (39.0,-121.0)
    ];
    

    你可能想这样做:

    var markers = [
    [39.729308,-121.854087],
    [39.0,-121.0]
    ];
    

    其次,根据文件 GLatLng takes two parameters 不是数组。

    试试这个:

    var point = new GLatLng(markers[i][0], markers[i][1]);
    

    编辑

    我已经更正了您的代码并将其托管在JSBin上。在解决上述问题后,它似乎正在发挥作用:

    http://jsbin.com/afojo