Если у вас возникли какие либо вопросы которые вы не смогли решить по нашим публикациям самостоятельно,
то ждем ваше обращение в нашей службе тех поддержки.
Код template.php
Данный шаблон работает только в ajax режиме, не забудьте включить его для компонента в котором будете использовать.
Достаточной распаковать архив шаблона в /bitrix/#Шаблон сайта#/components/bitrix/system.pagenavigation.
И указать его в настройках постраничной навигации.
P.S: В шаблоне списка могут быть элементы вывод, которых требуется только 1 раз. Например - фильтр, или ссылка на подключения к RSS -каналу.
То вывод данных элементов я бы посетовал заключить в условие.
Назад в раздел
Наверх
то ждем ваше обращение в нашей службе тех поддержки.
Постраничка как в соц. сетях.
Всем мы знаем эти бесконечные ленты новостей в соц. сетях. И это мне кажется удобно, когда контент подгружаться постепенно и не требуется щелкать на каждую страницу и жать пока она загрузиться. Вот шаблон компонента bitrix::system.pagenavigation:Код template.php
<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();?>
<?CJSCore::Init(array("jquery"));?>
<?
$arResult["NavQueryString"] = str_replace('&','&',$arResult["NavQueryString"]);
$do = preg_match('/.*bxajaxid=(\S+).*/',$arResult["NavQueryString"],$bxajaxid);
?>
<sc ript>
var ajax_nav = <?=CUtil::PhpToJSObject($arResult)?>;
var bxajaxid = "<?=$bxajaxid[1]?>";
</sc ript>
<?
if(!$do)
{
?>
<div id ='ajax_nav'>
</div>
<sc ript type="text/javascript">
/* isset for javascript */
window.isset = function()
{
if (arguments.length===0) return false;
var buff=arguments[0];
for (var i=0; i<arguments.length; i++)
{
if (typeof(buff)==='undefined') return false;
buff = buff[arguments[i+1]];
}
return true;
}
BX.ready(
function()
{
$(window).scroll(
function()
{
if($(window).scrollTop()+$(window).height()>=$('#ajax_nav').offset().top)
{
if (ajax_nav.NavPageCount > ajax_nav.NavPageNomer )
{
if(bxajaxid.length == "")
{
bxajaxid = $('#ajax_nav').parents("div[id*='comp_']").attr('id').replace('comp_','');
url = location.pathname+'?PAGEN_'+ajax_nav.NavNum+'='+(parseInt(ajax_nav.NavPageNomer)+1)+'&bxajaxid='+bxajaxid+'&'+ ajax_nav.NavQueryString
}
else url = location.pathname+'?PAGEN_'+ajax_nav.NavNum+'='+(parseInt(ajax_nav.NavPageNomer)+1)+'&'+ ajax_nav.NavQueryString;
if (!isset(window, "ajax_sent")) //&& )
{
ajax_sent = true;
$('#ajax_nav').addClass('bx-core-waitwindow');
$.get(url,function(data)
{
$('#ajax_nav').removeClass('bx-core-waitwindow');
bxajaxid = $('#ajax_nav').before(data);
ajax_sent = false;
});
}else if (ajax_sent == false)
{
ajax_sent = true;
$('#ajax_nav').addClass('bx-core-waitwindow');
$.get(url,function(data)
{
$('#ajax_nav').removeClass('bx-core-waitwindow');
bxajaxid = $('#ajax_nav').before(data);
ajax_sent = false;
});
}
}
}
});
});
</sc ript>
<?}?> |

Достаточной распаковать архив шаблона в /bitrix/#Шаблон сайта#/components/bitrix/system.pagenavigation.
И указать его в настройках постраничной навигации.

То вывод данных элементов я бы посетовал заключить в условие.
if(!isset($_REQUEST['bxajaxid'])){
#Часть кода которая должна отработать однократно на страницы.#
} |
Назад в раздел
Подписаться на новые материалы раздела:
Загрузка...
Наверх