0

私はそれを機能させることができないので、これは私を少し狂わせています:(!

次のようにjQueryタブを設定しています(すべて機能しています):

    $(".tabs_area" ).tabs({
        fx: { duration: 'slow', opacity: 'toggle' }
    });

次に、アンカーフォーカスメカニズムへのスクロールがあります(関数自体に関しては、再び正常に機能します):

    $('.tabs_area li a').bind('click',function(event){
        var $anchor = $(this);

        $('html, body').stop().animate({
          scrollTop: $($anchor.attr('href')).offset().top
        }, 500,'easeInOutExpo');

        event.preventDefault();
    });

私の問題は、悲しいことに、それらが同時に機能しないことです。タブをクリックすると、対応するタブのコンテンツが正しく表示されますが、このコンテンツの先頭までスクロールしません。タブをもう一度クリックしてコンテンツまでスクロールする必要がありますが、これは良くありません。

悲しいことに、私が必要とする理由は、これをモバイル Web サイトで使用しているためです。タブをクリックすると、実際にはコンテンツが変更されますが、タブ メニューの下にあるため、画面の表示領域の下にあるため、なぜコンテンツを入れ替えてから、下にスクロールして表示できるようにしたいと思います。もちろん、ワンクリックだけで表示できます。

だから、タブ設定コード内でスクロール機能を組み合わせる必要があると思います...どういうわけか...コールバックか何かとして...しかし、私はそれを壊し続けます:(!!

どんな助けでも大歓迎です。

前もってありがとう、TJ

4

1 に答える 1

0

jQuery Tabsのshowオプションを使用しないのはなぜですか? やりたいことをやるようです。

解決策を確認する

  $(".tabs_area" ).tabs({
        show: function(e,ui){
          $('html, body').stop().animate({
          scrollTop: $(ui.tab.getAttribute('href')).offset().top
        }, 500,'easeInOutExpo');
        }
  });
于 2013-10-21T06:54:47.230 に答える