私のjqueryアコーディオンに私がやりたいことをさせるのに少し問題がありました。
クリックされているタブをページの上部から一定量のピクセルまでスクロールしたいのですが、ちょっとうまくいきました。ただし、アクティブなタブがクリックされているタブの上にあり、ページがすでに少し下にスクロールされている場合は常に、クリックされたタブの上部とコンテンツの一部がページの上部を超えて上にスクロールされます。
これは私が得たものです:
$(function() {
$("#accordion").accordion({
autoHeight: false,
collapsible: true,
heightStyle: "content",
active: 0,
animate: 300
});
$('#accordion h3').bind('click',function(){
theOffset = $(this).offset();
$('body,html').animate({
scrollTop: theOffset.top - 100
});
});
});
これが私の問題を説明するためのフィドルです。
たとえば、「セクション 2」を展開し、下にスクロールして「セクション 3」タブをクリックすると、すべてがページからスクロールされますが、他の方法では機能します。
そして、新しいタブを開く前にアクティブなタブを閉じても問題なく動作するので、これは折りたたみタブの高さと関係があると思います。
誰かが助けてくれることを願っています。私はおそらくこれに間違った方法でアプローチしています。私のjqueryスキルは基本的なカットアンドペーストの理解に限定されているため、実際に何をしているのか本当にわかりません! ^^
事前に感謝し、すべてのヘルプとポインタ領域を歓迎します! :)
乾杯