jskey_page
$jskey.page() — это реализация навигационной панели для перелистывания страниц на чистом JavaScript, которая позволяет настраивать отображаемый шаблон.
Пример использования:
<div id="p1"></div>
<script type="text/javascript">
$jskey.page({
object:'p1',
size:990,
fn:function(e){
// В функции обратного вызова e можно использовать переменные и функции: e.* (все доступные параметры), e.totalpage (общее количество страниц), e.redo() (функция сброса).
alert(e.page);
}
});
</script>
Шаблон можно настроить с помощью параметра template. Если в template напрямую указать значения 1–4, будут использоваться четыре предустановленных шаблона.
В шаблоне можно использовать следующие переменные:
{pageview} {size} {page} {totalpage} {prev} {first} {pagelist} {last} {next} {skip} {go} {pagesize}
Параметры можно кратко описать следующим образом:
$jskey.page({
template:"{pageview}<span>共{size}条记录 第{page}/{totalpage}页 </span>{prev}{first}{pagelist}{last}{next}<span> 转到第</span>{skip}<span>页</span>{go}<span> 每页</span>{pagesize}",
object:'p6', // Идентификатор HTML DOM элемента, где будет размещена информация о панели перелистывания.
pagesize:10, // Количество элементов на странице. По умолчанию — 10.
size:20000, // Общее количество данных. Можно не указывать при инициализации, по умолчанию — 0.
page:1, // Текущая страница. Можно не указывать при инициализации, по умолчанию — 1.
skin: 'my', // Имя пользовательского CSS-класса для оформления или два цвета через запятую (цвет фона, цвет текста): '#00AA91,#ffffff'.
first: '<<', // Не отображается, если установить значение false.
last: '>>', // Не отображается, если установить значение false.
prev: '<', // Не отображается, если установить значение false.
next: '>', // Не отображается, если установить значение false.
go: '确定',// Значение кнопки перехода на указанную страницу.
pagelist:3,// Количество кнопок слева и справа.
hide:true,// Скрывает первую, предыдущую, следующую и последнюю страницы, когда нет соответствующих страниц.
arr:[
{object:'p7',template:2},// Здесь каждый объект может иметь те же параметры, что и основная панель перелистывания, за исключением page, pagesize, size и fn.
{object:'p8',template:3}
],// Здесь можно добавить несколько связанных панелей перелистывания и синхронизировать информацию о перелистывании.
fn:function(e){// Функция обратного вызова, которая выполняется после завершения инициализации. Может быть использована для сброса значений page и pagesize и вызова функции redo() для обновления панели перелистывания.
// Здесь можно сбросить значения page и pagesize. Обратите внимание на то, чтобы данные после изменения были правильными.
$.getJSON('./data.json?page='+e.page+'&pagesize='+e.pagesize+'&r='+new Date(), function(res){
// Обновлять данные только при изменении данных. В этом примере используется статический JSON, поэтому page и pagesize обычно не устанавливаются.
if(e.size != res.size){// ||e.page != res.page
e.size = res.size;// Если данные панели слишком старые или неверные, их можно обновить здесь.
//e.page = res.page;// Если это значение отображения текущей страницы.
//e.pagesize = res.pagesize;// Это целое число больше 0, которое обычно устанавливается один раз.
e.redo();// Если данные панели обновлены, необходимо вызвать эту функцию для обновления содержимого страницы.
}
// Пример изменения данных во время процесса.
if(e.page == 10){
e.template = 1;
e.redo();
}
else{
var s = "{pageview}<span>共{size}条记录 第{page}/{totalpage}页 </span>{prev}{first}{pagelist}{last}{next}<span> 转到第</span>{skip}<span>页</span>{go}<span> 每页</span>{pagesize}";
if(e.template != s){
e.template = s;
e.redo();
}
}
// Здесь можно выполнить цикл по res.rows для рендеринга данных таблицы.
// ...
fn(e);
});
}
});
Для более подробного ознакомления с примером рекомендуется перейти по ссылке ниже и использовать «Просмотр исходного кода страницы» для просмотра кода.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )