640X60广告位招租 qq245909083

discuz 帖子内容页分页ajax点击加载更多

分享时间:2017-12-19 645 热度℃
默认是普通的分页码,点击跳转。可以初步实现帖子内容页ajax点击加载效果。
需要添加一些代码到viewthread.htm和viewthread_node.htm里。
1.viewthread.htm,调用viewthread_node.htm的loop结束之后增加代码:
本帖隐藏的内容

<!--{if $_G['page'] == 1 && $_G[forum_thread][replies] > 0}-->
        <div id="post-ajax-show"></div>
        <script type="text/javascript">
        var pages=$_G['page'];
        var allpage={echo $thispage = ceil($_G['forum_thread']['replies'] / $_G['ppp']);};
        $('post-ajax-btn').style.display = allpage > 1 ? 'block' : 'none';
        function ajaxpage(url){
                $("post-ajax-load").style.display='block';
                $("post-ajax-btn").style.display='none';
                var x = new Ajax("HTML");
                pages++;
                url=url+'&page='+pages;
                x.get(url, function (s) {
                        s = s.replace(/\\n|\\r/g, "");
                        s = s.substring(s.indexOf("<div id=\"uc_postbeg\"></div>"), s.indexOf("<div id=\"uc_postend\"></div>"));
                        console.log(s);
                        $('post-ajax-show').innerHTML+=s;
                        $("post-ajax-load").style.display='none';
                        if(pages==allpage){                                                        
                                $("post-more").style.display='none';
                        }else{
                                $("post-ajax-btn").style.display='block';
                        }
                });
                return false;
        }
        </script>
<!--{/if}-->

在需要显示点击加载按钮的地方添加
<!--{if $_G['page'] == 1 && $_G[forum_thread][replies] > 0  && $multipage}-->
<div class="uc-comment-more">
        <div id="post-more" class="pgbtn">
                <div id="post-ajax-load" style="display:none;"><a>加载中...</a></div>
                <div id="post-ajax-btn"><a href="forum.php?mod=viewthread&tid=$_G[tid]&extra=$_GET[extra]&ordertype={if $ordertype != 1}2{else}1{/if}&threads=thread" onclick="return ajaxpage(this.href);">加载更多</a></div>
        </div>
</div>
<!--{/if}-->

2.在viewthread.htm中,回复楼层loop前加
<div id="uc_postbeg"></div>

后加
<div id="uc_postend"></div>

可以初步实现ajax加载更多。
返回顶部