Google 显示上次点击位置的地图信息框

Google Maps infobox showing the previous clicked location

在我的网站上,我有一张地图,上面有一些物品。通常当你点击它们时,一个弹出框会显示一些信息。现在的问题是,当我单击位置 1 时,框 1 打开。但是当点击位置2时,盒子会在位置1打开。当点击位置3时,盒子会在位置2打开,当点击位置4时,盒子会在位置3打开,依此类推

这是第一行代码:

var infoBox_ratingType='star-rating';(function($){"use strict";function mainMap(){var ib=new InfoBox();function locationData(locationURL,NewTab,locationImg,locationTitle,locationAddress){return(''+'<a href="'+ locationURL+'" ' + (NewTab ? 'target="_blank"' : '') +' class="listing-img-container">'+'<div class="infoBox-close"><i class="fa fa-times"></i></div>'+'<img src="'+locationImg+'" alt="">'+'<div class="listing-item-content">'+'<h3>'+locationTitle+'</h3>'+'<span>'+locationAddress+'</span>'+'</div>'+'</a>')}

var locations=[
[locationData('https://www.lichaamengeest.be/sauna/kuurcentrum.php','','https://www.lichaamengeest.be/sauna/kuurcentrum/kuurcentrum.jpg',"Wellnesscentrum Yolande Buekers",'Langstraat 31<br>3830 Wellen'),50.819357,5.309640,1,'<i class="im im-icon-Green-House"></i>'],

此外,当尝试单击信息框的关闭 X 时,link 会被激活。 您可以在此处查看带有地图的页面:enter link description here 这里有完整的 js 文件:enter link description here 我想这是一个 javascript 错误,请问有人能帮我解决问题吗?谢谢!

如果信息框已打开,请尝试将其关闭,然后在新标记(覆盖)上打开信息框。

更新以下函数
return function() {
             ib.setOptions(boxOptions);
             boxText.innerHTML = locations[i][0];
             ib.open(map, overlay);

这个到

return function() {
                 ib.setOptions(boxOptions);
                 boxText.innerHTML = locations[i][0];
                 ib.close();
                 ib.open(map, overlay);