【问题标题】:Google Maps infobox showing the previous clicked location谷歌地图信息框显示之前点击的位置
【发布时间】:2018-07-25 08:49:30
【问题描述】:

在我的网站上,我有一张地图,上面有一些项目。通常,当您单击它们时,一个弹出框会显示一些信息。现在的问题是,当我单击位置 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 时,链接会被激活。 您可以在此处查看带有地图的页面:enter link description here 这里有完整的 js 文件:enter link description here 我想这是一个javascript错误,所以有人可以帮我解决这里的问题吗?谢谢!

【问题讨论】:

    标签: javascript google-maps maps infobox


    【解决方案1】:

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

    更新下面的函数
    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);
    

    【讨论】:

    猜你喜欢
    • 2013-02-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-11
    • 2014-08-10
    相关资源
    最近更新 更多