gpt4 book ai didi

javascript - 谷歌地图 API : How to zoom in on and set different centers for multiple markers in for loop?

转载 作者:行者123 更新时间:2023-12-03 07:06:18 24 4
gpt4 key购买 nike

我有一个标记数组,我想编写代码,使用户能够在单击特定标记时放大该标记。这个循环的问题是,当我运行代码时,无论我单击哪个标记,它都会以最后一个标记为中心放大?我不明白这一点,因为我虽然通过在“marker[i].getPosition()”上设置中心来为每个标记监听器提供自己的标记中心属性?

这个逻辑有什么问题吗?

function zoomOnMarker(markers, map) {
position = new Array(0)
for (var i = 0; i < markers.length; i++) {
position.push(markers[i].getPosition());
markers[i].addListener('click', function () {
map.setZoom(15);
map.setCenter(position[i]);
});
}
}

最佳答案

尝试以这种方式使用函数

    var addListenersOnMarker = function(marker, map, position ) {
google.maps.event.addListener(marker, 'click', function (event) {
map.setZoom(15);
map.setCenter(position);

});
};

function zoomOnMarker(markers, map) {
position = new Array(0)
for (var i = 0; i < markers.length; i++) {
position.push(markers[i].getPosition());
addListenersOnMarker(marker[i] map, position[i] );
}
}

关于javascript - 谷歌地图 API : How to zoom in on and set different centers for multiple markers in for loop?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36808669/

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