javascript - 页面滚到底部自动加载加载出现请求多次bug

 人一旦_488 发布于 2022-11-11 08:57

代码如下:

$(window).scroll(function(){
    var scrolltop=$(window).scrollTop();
    var wheight=$(window).height();
    var dheight=$(document).height();
    if(scrolltop>dheight-wheight-20){
        page++;
        $.ajax({
            type: "GET",
            url: url+"page/"+page,
            dataType: "json",
            success: function(data){
                $("#list").append(html字符串);
            }
    }
})

发现chrome开发者工具里显示发送多次请求,

求解决方案!

2 个回答
  • function performScroll(){
        var scrolltop=$(window).scrollTop();
        var wheight=$(window).height();
        var dheight=$(document).height();
        if(scrolltop>dheight-wheight-20){
            page++;
            $(window).unbind('scroll');
            $.ajax({
                type: "GET",
                url: url+"page/"+page,
                dataType: "json",
                success: function(data){
                    $("#list").append(html字符串);
                    $(window).bind('scroll',performScroll);
                }
        }
    }
    $(window).bind('scroll',performScroll);
    2022-11-12 01:52 回答
  • //    增加一个变量记录是否处于请求中
    var flag = true;
    
    $(window).scroll(function(){
        var scrolltop=$(window).scrollTop();
        var wheight=$(window).height();
        var dheight=$(document).height();
        if(scrolltop>dheight-wheight-20 && flag){
            //    开始请求的时候,将状态置false;
            //    这样就算高度达到请求标准也无法进入请求状态
            flag = false;
            page++;
            $.ajax({
                type: "GET",
                url: url+"page/"+page,
                dataType: "json",
                success: function(data){
                    $("#list").append(html字符串);
                    //    将标志置为true,这样当高度再次达到标准时,可以执行请求
                    flag = true;
                }
        }
    })
    2022-11-12 01:52 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有