0

JavaScript で、 InfoBubbleと呼ばれる Google マップ API v3 用の小さなプラグインを見つけました。高度にカスタマイズされた情報ウィンドウを簡単に作成できるようにするのに非常に役立ちます。私がそこに見つけられないように見えるのは、タブボタンをクリックするのではなく、関数呼び出しを介して特定のタブを開く方法です。プラグインの機能の一つである 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);

そのコードでも、毎回最初のタブが開かれます。どんな考えでも大歓迎です。

編集:ここに投稿した直後に実際に自分で問題を修正しました...コードを詳しく調べた後、何らかの理由で、作者が0ではなく1から始まる番号を使用していることに気付きました.これは素晴らしいプラグインですが、間違いなくいくつかのドキュメントが必要です.. .

4

1 に答える 1

0

タブが開いていることを確認します (isOpen() メソッドで確認できます)。

必要に応じて、InfoBubble.prototype.open を変更して特定のタブを開くことができます。

  window.setTimeout(function() {
         that.open_(opt_map, opt_anchor);
         that.setTabActive(_defaultTab);        
  }, 0);
于 2012-09-04T15:02:11.953 に答える