كيفية حلقة من خلال خريطة جوجل الإحداثيات ؟
-
03-07-2019 - |
سؤال
أنا عالقة في محاولة حلقة من خلال هذه مجموعة من الإحداثيات التي يضع دبابيس على خريطة جوجل.
هنا هو بلدي رمز: 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;
}
المحلول
أولا وقبل كل البرمجية التالية غير صحيحة جافا سكريبت.
var markers = [
(39.729308,-121.854087),
(39.0,-121.0)
];
ربما كنت من المفترض أن تفعل هذا:
var markers = [
[39.729308,-121.854087],
[39.0,-121.0]
];
ثانيا, ووفقا للوثائق GLatLng
يأخذ المعلمتين, لا صفيف.
جرب هذا بدلا من ذلك:
var point = new GLatLng(markers[i][0], markers[i][1]);
تحرير
لقد تصحيح التعليمات البرمجية الخاصة بك واستضافته على شبيبة بن.يبدو أن العمل بعد تحديد القضايا المذكورة أعلاه:
لا تنتمي إلى StackOverflow