section
タグは、divにオーバーフローがhidden
に設定されています。コードは、この線に沿っている:jQueryアニメーションスクロールトップ
<div id="viewport">
<section>
content
</section>
<section>
content
</section>
</div>
私は、対応するリンクがメニューに押されたときにdiv
内に含まれるsections
をスクロールできるようにしたいので、それは次のように設定しています。私はこの機能を持っている:
sections
のサイズが異なるので、私は
#viewport
のdivのサイズを変更するために使用
$('#mn a').click(function(){
var aHref = $(this).attr("href");
var sectionHeight = $('section'+aHref+'').height();
$('#viewport').height(sectionHeight);
});
。このスクロール部分をその関数に入れようとすると、次のようになります。
$('body,html').animate({scrollTop: $(aHref).offset().top}, 800);
ページ全体がスクロールします。 $('body,html')
を$('section, #viewport')
に置き換えようとすると、div内がスクロールしますが、正しくは行われません。
このライブの例はhereです。私はそれが.offset()
か、私が.animate()
に渡しているものと関係があると思っていますが、私は非常に異なるいくつかのことを試しましたが、役に立たないものです。誰かが正しい方向に私を向けるか、私が間違ったことを教えてもらえますか?
ありがとうございます。値をサニタイズすると完璧に機能しました! –
それは私のためにも働いた。私はfirefoxで試しました。 – OMG