繁体   English   中英

Ajax在页面加载时触发

[英]Ajax to fire on page load

我希望有人能找到我的问题。 我的脚本只有在向下滚动时才会触发...我需要该功能。 它不执行的操作也是页面加载时触发,这是我最初需要执行的操作。 因此,它将首先加载内容,然后向下滚动页面以获取更多新内容。

我尝试将ajax放在函数名称之外的函数中,但仍然没有触发。

$(document).ready(function() {
    $(window).scroll(function() {
        if ($(window).scrollTop() >= $(document).height() - $(window).height() - 100) {
            flag = true;
            first = $('#first').val();
            limit = $('#limit').val();
            no_data = true;
            if (flag && no_data) {
                flag = false;
                $('#loadmoreajaxloader').show();
                $.ajax({
                    url: "commentedoncontent.php",
                    dataType: "json",
                    method: "POST",
                    cache: false,
                    data: {
                        start: first,
                        limit: limit
                    },
                    success: function(data) {
                        flag = true;
                        $('#loadmoreajaxloader').hide();
                        if (data.count > 0) {
                            first = parseInt($('#first').val());
                            limit = parseInt($('#limit').val());
                            $('#first').val(first + limit);
                            $.each(data.posts, function(i, response) {
                                //post content here
                            });
                        } else {
                            alert('No more data to show');
                            no_data = false;
                        }
                    },
                    error: function(xhr, ajaxOptions, thrownError) {
                        alert(xhr.status);
                        flag = true;
                        no_data = false;
                    }
                });
            }
        }
    });
});

您需要将其作为一个函数进行分离,因此可以在滚动和页面加载时调用它:

$(document).ready(function() {
    myFunction();
    $(window).scroll(function() {
        if ($(window).scrollTop() >= $(document).height() - $(window).height() - 100) {
            myFunction();
        }
    });
});
function myFunction(){
    /* all the logic goes here */
}

您可以将代码放在函数中,然后在页面加载和滚动时执行。

$(document).ready(function() {
  doStuff(); //choose the name that you want 

  $(window).scroll(function() {
    doStuff();
   });
});

function doStuff(){    
        if ($(window).scrollTop() >= $(document).height() - $(window).height() - 100) {
            flag = true;
            first = $('#first').val();
            limit = $('#limit').val();
            no_data = true;
            if (flag && no_data) {
                flag = false;
                $('#loadmoreajaxloader').show();
                $.ajax({
                    url: "commentedoncontent.php",
                    dataType: "json",
                    method: "POST",
                    cache: false,
                    data: {
                        start: first,
                        limit: limit
                    },
                    success: function(data) {
                        flag = true;
                        $('#loadmoreajaxloader').hide();
                        if (data.count > 0) {
                            first = parseInt($('#first').val());
                            limit = parseInt($('#limit').val());
                            $('#first').val(first + limit);
                            $.each(data.posts, function(i, response) {
                                //post content here
                            });
                        } else {
                            alert('No more data to show');
                            no_data = false;
                        }
                    },
                    error: function(xhr, ajaxOptions, thrownError) {
                        alert(xhr.status);
                        flag = true;
                        no_data = false;
                    }
                });
            }
        }

}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM