1

そのため、この問題を無駄に排除しようと何度も調査しました。私はJavascriptの相対的なNoobです。私が抱えている問題は、イベント ハンドラーがトリガーされると、必要な新しい 20 項目が出力されますが、前の 20 項目も 1 回の読み込み後にフリーズすることです。コードは次のとおりです。

ジャバスクリプト関数:

<script type="text/javascript">
    $(window).scroll(function(){
        if($(window).scrollTop() == $(document).height() - $(window).height()){
            $('div#loadMoreComments').show();
            $.ajax({
                url: "loadeR.php?lastComment=" + $(".postedComment:last").attr("id"),
                success: function(html){
                            if(html){
                                $("div#postedComments").append(html);
                                $("div#loadMoreComments").hide();
                            }else{
                                $("div#loadMoreComments").replaceWith("Showing All Comments!");
                            }
                        }
            });
        }
    });
</script>

APPEND PAGE PHP:

if($_GET['lastComment']){
    $NewAll = mysql_query('select*from scroll WHERE id < "'.$_GET['lastComment'].'" ORDER BY id DESC LIMIT 0,20');
    $a = mysql_num_rows($NewAll);
    for($i=0;$i<$a;$i++){
        $id = mysql_result($NewAll,$i,'id');
        $name = mysql_result($NewAll,$i,'name');
        $text = mysql_result($NewAll,$i,'text');
        echo "
            <div class='postedComment' id='$id postedComment'>
            <img src='prime1.jpg' id='userimage'/>
                <div id='rightcontainer'>
                    <div id='walluser'>User Name $id</div>
                    <div id='wallcontent'>Comment/Content $name</div>
                    <div id='walltime'>Time posted $text</div>
                </div>
            </div>
        ";  

    }
}

初期分割ロード済み

<div id="postedComments">
    <?php
        $All = mysql_query('select*from scroll ORDER BY id DESC LIMIT 0,20');
        //SELECT * FROM [insert table name] ORDER BY [insert unique counter] DESC LIMIT 0,[MAX #]
        $a = mysql_num_rows($All);
        for($i=0;$i<$a;$i++){
            $id = mysql_result($All,$i,'id');
            $name = mysql_result($All,$i,'name');
            $text = mysql_result($All,$i,'text');
            echo "
                    <div class='postedComment' id='$id postedComment'>
                        <img src='prime1.jpg' id='userimage'/>
                        <div id='rightcontainer'>
                            <div id='walluser'>User Name $id</div>
                            <div id='wallcontent'>Comment/Content $name</div>
                            <div id='walltime'>Time posted $text</div>
                        </div>
                    </div>
                "; 
        }

    ?>
</div>
<div id='loadMoreComments' style="display:none;"><img src="js/loadwheel.gif"/></div>
4

0 に答える 0