gpt4 book ai didi

javascript - Google map - 创建多个标记

转载 作者:行者123 更新时间:2023-11-29 16:15:36 24 4
gpt4 key购买 nike

我在尝试使用存储在数组中的信息将多个标记循环到 map 上时遇到了一些麻烦。

代码创建 map 没有问题,但它没有显示我试图循环出的标记...

从下面的代码中可以看出,有两个函数在创建标记。第一个是简单地使用两个值。这个标记显示正常。

然而,第二个函数是从数组中获取数据(该数组已设置为将纬度和经度数据“压缩”在一起,按照谷歌地图要求的顺序)并且不显示任何内容运行时。

有什么想法吗?我很难过!

提前致谢!

代码如下:

初始“位置”数组:

var locations = new Array();

for (var i = 0; i < data.length; i++)
{
var row = data[i];

var longitude = row[0];
var latitude = row[1];

locations[i] = latitude + longitude;
}

callMap(locations, locationFilename, userLatitude, userLongitude);

Google map 功能

    function callMap(locations, locationFilename, userLatitude, userLongitude) {

var mapOptions = {
zoom:16,
center: new google.maps.LatLng(userLatitude, userLongitude),
mapTypeId: google.maps.MapTypeId.ROADMAP
};

var map = new google.maps.Map(document.getElementById('mapView'),mapOptions);

setMarkers(map, locations, locationFilename);
currentPosition(map, userLatitude, userLongitude);
}

function currentPosition(map, userLatitude, userLongitude)
{

var userLatLng = new google.maps.LatLng(userLatitude, userLongitude);

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

}

function setMarkers(map, locations, locationFilename) {

for (var i = 0; i < locations.length; i++) {

var markerLatLng = new google.maps.LatLng(locations[i]);

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

}
}

最佳答案

A google.maps.LatLng接受两个数字作为参数。

这是不正确的:

var markerLatLng = new google.maps.LatLng(locations[i]);

这应该有效:

for (var i = 0; i < data.length; i++)
{
var row = data[i];

var longitude = row[0];
var latitude = row[1];

locations[i] = new google.maps.LatLng(latitude,longitude);
}

然后

function setMarkers(map, locations, locationFilename) {

for (var i = 0; i < locations.length; i++) {

var markerLatLng = locations[i];

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

}
}
}

关于javascript - Google map - 创建多个标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16635872/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com