我正在尝试使用jQuery每个函数来获取当前页码。这就是我的做法
var CurrentPageView = 1;
var check = true;
var Bookmark = [];
var CurPage = 1;
$(function() {
$(window).scroll(function() {
if (check) {
var PagesPosition = [];
var CurrentWindowPosition = $(window).scrollTop();
var CurrentCenterWindowPos = CurrentWindowPosition + $(window).height() / 2;
$(".Page").each(function() {
var PagePos = $(this).offset().top;
if (PagePos / CurrentCenterWindowPos <= 1) {
CurPage = $(this).index() + 1;
}
});
$(".CurrPageNumber").val(CurPage);
CurrentPageView = CurPage;
}
});
});
而且效果很好。如果我上下滚动,他会更改并给我当前页码。如果在类(class)页面的人之间出现跨度之类的问题,则会发生问题。发生这种情况时,计数器将重置为1.。
我想知道是否有一种方法可以使“A4 Portrait”类的每个div保持计数,即使在一个范围内也是如此。
因此,而不是实际数量
1
2
1
2
这将是
1
2
3
4
最佳答案
尝试使用.Page
列表中的索引而不是其父目录中的索引:
$(".Page").each(function(i) {
var PagePos = $(this).offset().top;
if (PagePos / CurrentCenterWindowPos <= 1) {
CurPage = i + 1; // Use the index in the array.
}
});
$(".CurrPageNumber").val(CurPage);
CurrentPageView = CurPage;