2

誰でも私を助けることができますか?スムーズスクロールと制御速度で「遅い」機能を追加しようとしています。

本当の「スムーズスクロール」を実現したいと思っています。

コードは次のとおりです。

$(document).ready(function(){
$('.smoothscroll').live('click',function(e){
    $('html,body').animate({
    'scrollTop': $($(this).attr('href')).offset().top+'px'

    });
    e.preventDefault(); 
});

});
4

2 に答える 2

1

次のように、関数の 2 番目のパラメーターとしてアニメーション時間を.animate()(オプション オブジェクトの後に) 追加します。

$(document).ready(function(){
    $('.smoothscroll').live('click',function(e){
        $('html,body').animate({
            'scrollTop': $($(this).attr('href')).offset().top+'px'
        }, 10000);
        e.preventDefault(); 
    });
});

この例では、アニメーションには 10,000 ミリ秒 (10 秒) かかります。

于 2012-06-19T00:16:40.663 に答える
0

答えてくれてありがとうnbsp !

更新するだけで..

jQuery .live() はバージョン 1.9 以降で削除されました。

だからここで私のために働いた:

    $(document).ready(function() {
    $('.smoothscroll').on('click', 'a',function(e){
        $('html,body').animate({
            'scrollTop': $($(this).attr('href')).offset().top+'px'
        }, 10000);
        e.preventDefault();
    });
});
于 2015-11-08T19:22:15.647 に答える