Google Map V3 - 一次只允许显示一个信息框

Mic*_* Wu 4 google-maps google-maps-api-3

我移动infoWindowinfoBox了更好看的信息窗口.

我在地图上有很多标记.我想要做的是当一个infoBox已经打开时,如果用户点击其他标记,当前infoBox将自动关闭并且new infoBox将打开,以便用户不需要关闭当前infoBox,并且将始终只infoBox显示一个一时间

这是我当前解决方案的演示和代码 http://jsfiddle.net/neo3000ultra/9jhAy/

提前致谢!

Dr.*_*lle 10

改变这一部分:

        google.maps.event.addListener(marker, "click", function (e) {
            ib.open(map, this);
        });

        var ib = new InfoBox(myOptions);

       google.maps.event.addListener(marker2, "click", function (e) {
            ib2.open(map, this);
        });

        var ib2 = new InfoBox(myOptions2);
Run Code Online (Sandbox Code Playgroud)

以下内容:

    var ib = new InfoBox();

    google.maps.event.addListener(marker, "click", function (e) {
        ib.close();
        ib.setOptions(myOptions)
        ib.open(map, this);
    });

   google.maps.event.addListener(marker2, "click", function (e) {
        ib.close();
        ib.setOptions(myOptions2)
        ib.open(map, this);
    });
Run Code Online (Sandbox Code Playgroud)

适用于我,也适用于IE9:http://jsfiddle.net/doktormolle/9jhAy/1/

注意ib.close()在打开infoBox之前使用,似乎是诀窍.