我的页面需要从CMS获取用户内容,并显示在具有静态高度的页面上,溢出分为前端页面。
我查看了各种jQuery寻呼机插件,它们都需要一个特定的标记来定位(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);
}
有什么想法吗?
编辑更具体 - 问题在于静态高度要求:我的html看起来像这样:
第1段(简称)
第2段(简称)
第3段(长)
第4段(简称)
短段落将在同一页面上,长列表需要分成单独的页面...有点像在Word中插入动态分页符我猜...
答案 0 :(得分:1)
您是否考虑使用$(“*”)选择器?这将选择任何可用的标签
确切地说,你可以做这样的事情$(“#contentCMS *”)。pager();
OR
$( “#contentCMS”)找到(*)寻呼机();