我希望有人能夠找到我的問題。我的腳本只在向下滾動時觸發...我需要該功能。它沒有做的是在頁面加載時也是我最初需要的。所以它首先加載內容,然後我可以向下滾動頁面以獲得更多新內容。Ajax在頁面加載時觸發
我試圖把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;
}
});
}
}
});
});
'ready'裏面的部分只是附加一個滾動監聽器。你想要加載哪個部分? – Carcigenicate
我想在頁面加載時觸發ajax(頁面刷新時),以便我可以看到新的內容。但是我也希望滾動功能在獲取新內容方面發揮作用。它不會拋出任何錯誤,因爲它不會觸發頁面加載。只有當我滾動。 – Gateway
雖然你從來沒有告訴它在頁面加載時觸發它。你在頁面加載時所做的只是附加一個滾動監聽器,它在滾動之前什麼也不做。請參閱下面的答案。 – Carcigenicate