如何获取 jQuery 航路点插件来计算新添加的内容?
How do I get jQuery waypoint plugin to count newly added content?
我正在为 jQuery 使用航路点插件。它非常适合页面上的 div。但是当我使用 AJAX 添加新的 div 时,它对那些新添加的 div 不起作用。它不算他们。
这是我的代码:
Waypoint = $('.Picture-1A').waypoint(function(direction){
if(direction == 'down'){
id = $(this.element).children(".PictureID").text();
$.post('ajax/count-pictures-views.php', {picture_id: id}, function(data){
Waypoint.refreshAll();
});
}
});
我也用过 On() 但它对所有默认和新添加的都不起作用。
我怎样才能让它适用于新添加的内容?
这是我的 Ajax 页面:
$(document).ready(function(){
endPictures = true;
scrollCount = 0;
$(window).scroll(function(){
if(endPictures == true){
if(scrollCount == 0){
if($(window).scrollTop() >= $(document).height() - $(window).height() - 3000){
scrollCount = 1;
picturesCount = $(".Picture-1A").length;
$.post('ajax/load-latest.php', {off_set:picturesCount}, function(data){
if(data){
$("#loadMore").append(data);
scrollCount = 0;
}else{
$("#loadMore").append("<div class=\"NoMorePictures\"><center>There are no pictures left.</center></div><br/ >")
endPictures = false;
scrollCount = 0;
}
});
}
}
}
});});
我终于想到了解决办法。这是我认为不言自明的代码。
$.post('ajax/load-latest.php', {off_set:picturesCount}, function(data){
if(data){
$("#loadMore").append(data);
scrollCount = 0;
$('.Picture-1A').waypoint(function(direction){
if(direction == 'down'){
id = $(this.element).children(".PictureID").text();
$.post('ajax/count-pictures-views.php', {picture_id: id}, function(data){
});
}
});
}else{
$("#loadMore").append("<div class=\"NoMorePictures\"><center>There are no pictures left.</center></div><br/ >")
endPictures = false;
scrollCount = 0;
}
});
我所做的只是将 $('.Picture-1A').waypoint(function(){});
添加到无限滚动 ajax 调用中。所以每次触发ajax调用时,都会刷新航路点。
我正在为 jQuery 使用航路点插件。它非常适合页面上的 div。但是当我使用 AJAX 添加新的 div 时,它对那些新添加的 div 不起作用。它不算他们。
这是我的代码:
Waypoint = $('.Picture-1A').waypoint(function(direction){
if(direction == 'down'){
id = $(this.element).children(".PictureID").text();
$.post('ajax/count-pictures-views.php', {picture_id: id}, function(data){
Waypoint.refreshAll();
});
}
});
我也用过 On() 但它对所有默认和新添加的都不起作用。 我怎样才能让它适用于新添加的内容?
这是我的 Ajax 页面:
$(document).ready(function(){
endPictures = true;
scrollCount = 0;
$(window).scroll(function(){
if(endPictures == true){
if(scrollCount == 0){
if($(window).scrollTop() >= $(document).height() - $(window).height() - 3000){
scrollCount = 1;
picturesCount = $(".Picture-1A").length;
$.post('ajax/load-latest.php', {off_set:picturesCount}, function(data){
if(data){
$("#loadMore").append(data);
scrollCount = 0;
}else{
$("#loadMore").append("<div class=\"NoMorePictures\"><center>There are no pictures left.</center></div><br/ >")
endPictures = false;
scrollCount = 0;
}
});
}
}
}
});});
我终于想到了解决办法。这是我认为不言自明的代码。
$.post('ajax/load-latest.php', {off_set:picturesCount}, function(data){
if(data){
$("#loadMore").append(data);
scrollCount = 0;
$('.Picture-1A').waypoint(function(direction){
if(direction == 'down'){
id = $(this.element).children(".PictureID").text();
$.post('ajax/count-pictures-views.php', {picture_id: id}, function(data){
});
}
});
}else{
$("#loadMore").append("<div class=\"NoMorePictures\"><center>There are no pictures left.</center></div><br/ >")
endPictures = false;
scrollCount = 0;
}
});
我所做的只是将 $('.Picture-1A').waypoint(function(){});
添加到无限滚动 ajax 调用中。所以每次触发ajax调用时,都会刷新航路点。