0

ライブ編集で約 5000 行のデータを取得してください...
最初の 200 行を表示し、ユーザーがページを下にスクロールすると次の 200 行を表示できるようにしたい..おそらく前の 200 行を非表示にします。
..stackoverflowで数回検索した後..このコードを見つけました、あまり理解していないようです

    <table id="loadingtable" cellpadding="0" border="1" cellspacing="3" align="center" width="80%">
    <?php
    function createtr($value, $stop)
    {
        while($value <= $stop){
            echo'<tr>';
                echo '<td>';
                    echo "cell {$value}";
                echo '</td>';
            echo '</tr>';
            $value++;
        }
    }
    
    createtr(1, 5000);
    ?>  
    </table>

そして、ここにJqueryがあります

       $("#loadingtable tr").slice(100).hide();
       
        var mincount = 100;
        var maxcount = 100; 
    
        $(window).scroll(function() 
        {
            if($(window).scrollTop() + $(window).height() >= $(document).height() - 400) {
                    $("#loadingtable tr").slice(mincount,maxcount).fadeIn(800);
            mincount = mincount+100;
            maxcount = maxcount+100
        
        }
    }); 

コードが機能しません..どうもありがとうございました..

4

1 に答える 1

2
$("#loadingtable tr").slice(100).hide();

    var mincount = 0;
    var maxcount = 100; 

    $(window).scroll(function() 
    {
        if($(window).scrollTop() + $(window).height() >= $(document).height() - 400) {
            $("#loadingtable tr").slice(mincount,maxcount).fadeOut(800);
            mincount = mincount+100;
            maxcount = maxcount+100;
            $("#loadingtable tr").slice(mincount,maxcount).fadeIn(800);

    }
if($(window).scrollTop() <= 200) {
        $("#loadingtable tr").slice(mincount,maxcount).fadeOut(800);
        mincount = mincount-100;
        maxcount = maxcount-100;
        $("#loadingtable tr").slice(mincount,maxcount).fadeIn(800);

}
}); 

これにより、ユーザーがページの一番下までスクロールしたときに次の100行が読み込まれます(400ピクセル)。上記の行も非表示にするには、最初に同様の関数を追加して、上にスクロールし始めたときに再表示してから、FadeOutを使用する必要があります。

境界条件のチェックを追加する必要があります(mincount<0およびmaxcount>5000)

于 2013-03-04T08:08:36.570 に答える