У меня есть страница, которая должна брать пользовательский контент из CMS и отображаться на странице, которая имеет статическую высоту с переполнением, разбитым на страницы в интерфейсе пользователя.
Я изучил множествоПлагины jQuery Pager и все они требуют определенного тега для цели (p, div, li), где в моем случае я не буду знать, какой тег пользователь вводит в CMS.
var content = $("#weekly-features").children();
var pageHeight = 0;
var nextHeight = 0;
var pageCount = 0;
var start = 0;
// loop through and wrap p's with page divs
for (var i = 0; i < content.length; i++) {
pageHeight += $(content[i]).outerHeight();
if ((i + 1) < content.length) {
nextHeight = $(content[i + 1]).outerHeight();
}
if ((pageHeight + nextHeight) >= 400) {
pageCount++;
$(content.slice(start, i)).wrapAll('<div class="page' + pageCount + '" />');
pageHeight = 0;
start = i;
}
}
// wrap remaining page
if (start < content.length) {
pageCount++;
$(content.slice(start)).wrapAll('<div class="page' + pageCount + '" />');
}
// show first page
$("#weekly-features div").each(function() {
if ($(this).attr('class') == "page1") { return; }
else { $(this).hide(); }
});
buildPagerNav(pageCount);
}
Есть идеи?
абзац 1 (короткий)
абзац 2 (короткий)
абзац 3 (длинный)
- список 1
- список 2
- список 3
- список 4
- список 5
пункт 4 (короткий)
- список 1
- список 2
- список 3
- список 4
- список 5
где короткие абзацы будутна той же странице и длинный список нужно будет разбить на отдельные страницы ... Вроде как вставка динамического разрыва страницы в Word, я думаю ..