Количество новостей получаю так
текущее количество записей на странице получаю так
и сам код подгрузки
работает всё как надо, кроме единственного момента.
Проверка колличества запиесей на текущей странице делается одновременно с нажатием кнопки.
т.е если у нас всего записей 26, а изначально на странице 12, и загружается по 12.
После последнего клика, когда на странице уже 26 записей, по кнопке можно сделать еще 1 клик, после этого кнопка пропадает.
Т.е скрипт делает загрузку 1 лишний раз.
Как исправить ?
пока что сделал так:
но всё равно не камильфо если кнопка есть...
| Код |
|---|
<?
$newsCounter = CIBlockElement::GetList(Array(), Array("IBLOCK_ID" => 1, "ACTIVE" => "Y"), Array());
?>
|
текущее количество записей на странице получаю так
| Код |
|---|
var countBlocks = document.getElementsByClassName('news_item').length;
|
| Код |
|---|
$(document).ready(function(){
var path = "/include/news_list.php?ajax=Y";
var currentPage = 1;
var count = <? echo $newsCounter; ?>;
$(".show_more_btn").click(function(e){
var countBlocks = document.getElementsByClassName('news_item').length;
alert(countBlocks);
$.get(path, {PAGEN_1: ++currentPage}, function(data){
$(".news_list").append(data);
});
if(countBlocks == count){
$(".show_more_btn").css("display","none");
}
});
});
|
работает всё как надо, кроме единственного момента.
Проверка колличества запиесей на текущей странице делается одновременно с нажатием кнопки.
т.е если у нас всего записей 26, а изначально на странице 12, и загружается по 12.
После последнего клика, когда на странице уже 26 записей, по кнопке можно сделать еще 1 клик, после этого кнопка пропадает.
Т.е скрипт делает загрузку 1 лишний раз.
Как исправить ?
пока что сделал так:
| Код |
|---|
$(document).ready(function(){
var path = "/include/news_list.php?ajax=Y";
var currentPage = 1;
var count = <? echo $newsCounter; ?>;
$(".show_more_btn").click(function(e){
var countBlocks = document.getElementsByClassName('news_item').length;
alert(countBlocks);
if(countBlocks == count){
$(".show_more_btn").css("display","none");
}else{
$.get(path, {PAGEN_1: ++currentPage}, function(data){
$(".news_list").append(data);
});
}
});
});
|