質問

ピンをGoogleマップに配置する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;
}
役に立ちましたか?

解決

最初に、以下のコードはすべて不正なJavaScriptです。

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

おそらくこれを行うつもりでした:

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

第二に、ドキュメントによると GLatLng 配列ではなく、2つのパラメーターを受け取ります。

代わりにこれを試してください:

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

編集

コードを修正し、JS Binでホストしました。前述の問題を修正した後、動作しているようです:

http://jsbin.com/afojo

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top