簡體   English   中英

JS無限滾動

[英]JS Infinite Scroll

我使用這個https://infinite-scroll.com

對於普通的頁面滾動瀏覽,開箱即用的效果很好。

但是,我有一個問題,我在頁面頂部有一個常規導航。 我想完成的是:

訪客進入站點。 第1頁已加載訪客單擊導航中的第3頁,我希望先加載第2頁,然后再加載第3頁,然后自動向下滾動到第3頁

每個頁面都以div和ID開頭,例如

function checkAnchor( anchor ) {

        if ( $( anchor ).length ) {
            return true;
        } else {

            $( '.article-feed' ).infiniteScroll( 'loadNextPage' );
            checkAnchor( anchor );
        }       

    }

$( document ).on( 'click', 'a[href^="#"]', function ( event ) {

        event.preventDefault();

        anchor = $.attr( this, 'href' );

        while ( checkAnchor( anchor ) == false ) {              

            $( '.article-feed' ).infiniteScroll( 'loadNextPage' );

        }

        $( 'html, body' ).animate( {
            scrollTop: $( $.attr( this, 'href' ) ).offset().top
        }, 700 );

    } );

我已經嘗試了許多不同的方法來實現此目的,但是我似乎無法使其正常工作。 下一頁加載,但是我必須單擊鏈接,直到頁面3最終加載為止。 歡迎任何幫助

function checkAnchor( anchor ) {

        if ( $( anchor ).length ) {
            return true;
        } else {
            setInterval( function () {

                $( '.article-feed' ).infiniteScroll( 'loadNextPage' );

                var lastAnchor = "#" + $( ".anchor" ).last().attr( 'id' );

                if ( anchor == lastAnchor ) {
                    $( 'html, body' ).animate( {
                        scrollTop: $( anchor ).offset().top
                    }, 500 );
                    return true;
                } 

            }, 100 );
        }
    }

這種方法可以解決問題,但是我感覺自己正在通過這種方法破解自己的方法

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM