0

私は、prototype.js ライブラリを使用して steriotab システムをいじっています。steriotabs のコンテナーの下にある次の DIV が、次のタブに移動するときにフラッシュのように表示されることを除いて、すべて正常に動作します。理解するのが少し難しいことはわかっています。彼らのウェブサイトで見ることができますhttp://stereointeractive.com/blog/code/prototype-tabs/

4 つのタブ (機能、セットアップ、構成、ダウンロード) を連続して 3 回 4 回変更することで確認できます。コメント セクションは、ナビゲーション タブ (機能、セットアップ、構成、ダウンロード) のすぐ下にフラッシュのように表示されます。

問題は、次のタブに移動したとき、現在のタブが display:none であり、その間 (1 秒または 2 秒) 何もないため、次の HTML コードのブロックがナビゲーションのすぐ下の上部に来ることだったと思います..

この JavaScript が問題を引き起こしている可能性があります。

activate: function(tab) {
    var tabName = tab.id.replace(this.options.ids.tab,'');
    this.currentPanel = this.options.ids.panel+tabName;
    if (this.showPanel == this.currentPanel) {
      return false;
    }

    if (this.showPanel) {
      if (this.options.effects) {
        new Effect.Fade(this.showPanel, {queue: 'front'});
      } else {
        $(this.currentPanel).hide();
      }
    }

    if (this.options.effects) {
      new Effect.Appear(this.currentPanel, {queue: 'end'});
    } else {
      $(this.showPanel).show();
    }

    this.tabs.invoke('removeClassName', this.options.classNames.tabActive);
    tab.addClassName(this.options.classNames.tabActive);
    this.showPanel = this.currentPanel;
  }

あなたたちは何か考えがありますか?

4

1 に答える 1