1

ここで見つけたJavaScriptコードをstackoverflowで実装して、標準を使用してページ上の1つのリンクと他のページの他のセクションとの間をスムーズに移行しようとしています:

<a href="example.html#anchor">

問題は、ユーザーがリンクをクリックすると、スムーズなスクロールが行われる前に 1 秒の白いフラッシュが表示されることです。「ユーザーエクスペリエンス」のこの動作が気に入らない

これを防ぐにはどうすればよいですか?

JavaScript:

 (function($){

        var jump=function(e)
        {
           if (e){
               e.preventDefault();
               var target = $(this).attr("href");
           }else{
               var target = location.hash;
           }

           $('html,body').animate(
           {
               scrollTop: $(target).offset().top
           },1000, function()
           {
               location.hash = target;
           });

        }

        $('html, body').hide()

        $(document).ready(function()
        {
            $('a[href^=#]').bind("click", jump);

            if (location.hash){
                setTimeout(function(){
                    $('html, body').scrollTop(0).show()
                    jump()
                }, 0);
            }else{
              $('html, body').show()
            }
        });
    })(jQuery) 

ありがとう。

4

0 に答える 0