现在,每当用户到达我的页面底部时,我都会使用以下代码更新url哈希:
var new_page_value = 1;
$(window).scroll(function() {
if($(window).scrollTop() == $(document).height() - $(window).height()) {
new_page_value += 1;
window.location.hash = 'page-' + new_page_value;
}
});
当用户在下面的代码中滚动浏览任何带有“page”类的div时,我该怎么做?例如,如果用户滚动查看第一个哈希值应该更新为#page-1但是一旦他们滚动到第二个哈希值,哈希应该更新为#page-2,依此类推。如果它们回滚到第一个,则哈希值应再次更新为#page-1。基本上,哈希应该根据视图中的div进行更新。
<div class="page" data-page-num="1"></div>
<br /><br /><br /><br /><br /><br /><br /><br /><br />
<div class="page" data-page-num="2"></div>
<br /><br /><br /><br /><br /><br /><br /><br /><br />
<div class="page" data-page-num="3"></div>
答案 0 :(得分:0)
此代码可能会有所帮助,但在客户端可能会有点密集。
var new_page_value = 1;
$(window).scroll(function() {
$(".page").each(function() {
var position = $(this).position();
if($(window).scrollTop() == position.top) {
new_page_value += 1;
window.location.hash = 'page-' + new_page_value;
}
});
if($(window).scrollTop() == $(document).height() - $(window).height()) {
new_page_value += 1;
window.location.hash = 'page-' + new_page_value;
}
});