【问题标题】:InfoBubble open specific tabInfoBubble 打开特定选项卡
【发布时间】:2012-06-04 21:01:32
【问题描述】:

在 JavaScript 中,我发现了一个用于 google maps API v3 的简洁小插件,名为 InfoBubble。它在使高度定制的信息窗口变得容易方面做得很好。我似乎在那里找不到的是如何通过函数调用而不是单击选项卡按钮打开特定选项卡。我尝试了 setTabActive(index) 这是插件的功能之一,但它似乎不起作用。我是否遗漏了一些明显的东西,还是不仅仅是在 js 文件中挖掘正确的功能?

作为参考,这是我的代码:

var center = new google.maps.LatLng(//...getting some lat/lng coords...
var bubble = new InfoBubble(
{
    map: motherMap,
    position: center,
    minHeight: 250,
    maxHeight: 250,
    minWidth: 250,
    maxWidth: 250,
    tabClassName: "contentTab",
    padding: 3
});

//...creating tabs, getting which tab should be opened, setting the value of tabToShow and so on...

//at this point I've checked with console.out() and tabToShow is a number 0-2
bubble.setTabActive(tabToShow);

即使使用该代码,每次都会打开第一个选项卡。任何想法将不胜感激。

编辑:实际上,我在这里发布后就自己解决了这个问题......仔细查看代码后,我注意到作者,无论出于何种原因,使用从 1 开始的编号而不是 0。它是一个不错的插件,但肯定需要一些文档...

【问题讨论】:

    标签: javascript google-maps-api-3 infobubble


    【解决方案1】:

    确保选项卡已打开(您可以使用 isOpen() 方法检查)。

    如果需要,可以修改 InfoBubble.prototype.open 以打开特定选项卡:

      window.setTimeout(function() {
             that.open_(opt_map, opt_anchor);
             that.setTabActive(_defaultTab);        
      }, 0);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多