<? // в template.php постраничнйо навигации вставляем код ?>
<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();
/** @var array $arParams */
/** @var array $arResult */
/** @global CMain $APPLICATION */
/** @global CUser $USER */
/** @global CDatabase $DB */
/** @var CBitrixComponentTemplate $this */
/** @var string $templateName */
/** @var string $templateFile */
/** @var string $templateFolder */
/** @var string $componentPath */
/** @var CBitrixComponent $component */
$this->setFrameMode(true);
if(!$arResult["NavShowAlways"]) {
if ($arResult["NavRecordCount"] == 0 || ($arResult["NavPageCount"] == 1 && $arResult["NavShowAll"] == false)) {
return;
}
}
$strNavQueryString = ($arResult["NavQueryString"] != "" ? $arResult["NavQueryString"]."&" : "");
?>
<?if($arResult["bDescPageNumbering"] === true):?>
<?if ($arResult["NavPageNomer"] > 1):?>
<a class="btn" href="<?=$arResult["sUrlPath"]?>?<?=$strNavQueryString?>PAGEN_<?=$arResult["NavNum"]?>=<?=($arResult["NavPageNomer"]-1)?>" id="ajax_next_page"><?=GetMessage("LOAD_MORE")?></a>
<?endif?>
<?else:?>
<?if($arResult["NavPageNomer"] < $arResult["NavPageCount"]):?>
<a class="btn" href="<?=$arResult["sUrlPath"]?>?<?=$strNavQueryString?>PAGEN_<?=$arResult["NavNum"]?>=<?=($arResult["NavPageNomer"]+1)?>" id="ajax_next_page"><?=GetMessage("LOAD_MORE")?></a>
<?endif?>
<?endif?>
<?// в result_modifier.php или в самое начало файла template.php шаблона news.list вставляем код?>
<?
if(array_key_exists("IS_AJAX", $_REQUEST) && $_REQUEST["IS_AJAX"] == "Y")
{
$APPLICATION->RestartBuffer();
}
?>
<?// в файл component_epilog.php или в самый конец файла template.php шаблона всставляем код?>
<?
if(array_key_exists("IS_AJAX", $_REQUEST) && $_REQUEST["IS_AJAX"] == "Y")
{
die();
}
?>
//Подгрузка пр искроле
$(function() {
var load_more = false;
$(window).scroll(function() {
if($("#ajax_next_page").length && !load_more) {
var url = $("#ajax_next_page").attr("href");
var offset_button = $("#ajax_next_page").offset();
if($(this).scrollTop() >= offset_button.top - $(window).height()) {
load_more = true;
$.ajax({
url: url,
type: "POST",
data: {IS_AJAX: 'Y'},
success: function(data) {
$("#ajax_next_page").after(data);
$("#ajax_next_page").remove();
load_more = false;
}
});
}
}
});
});
//подгрузка при клике
$(function() {
var load_more = false;
$(document).on("click", "#ajax_next_page", function(e) {
e.preventDefault();
if(load_more)
return false;
var ajax_url = $(this).attr("href");
load_more = true;
$.ajax({
url: ajax_url,
type: "POST",
data: {IS_AJAX: 'Y'},
success: function(data) {
$("#ajax_next_page").after(data);
$("#ajax_next_page").remove();
load_more = false;
}
});
});
});