(前提:这是一个非常棒的问题)
你好,伙计们, 我试着为WordPress编写一个好的ajax导航/分页。 目前我正在尝试附加新的页面文章而不是替换旧的文章。在archive.php中,我用
替换了<?php the_posts_navigation(); ?>
<nav class="navigation posts-navigation" role="navigation">
<div class="nav-links">
<div class="nav-previous">
<?php next_posts_link(); ?>
</div>
</div>
</nav>
因为我只想显示“下一页”链接(稍后我将在一个按钮中设置样式)。
在我的js文件中我有
$('.nav-previous a').live('click', function(e){
e.preventDefault();
$('.navigation').remove(); // Removing the navigation link at the bottom of the first articles
var link = $(this).attr('href');
$.get( link, function(data) {
var articles = $(data).find('.archive-container');
$('#primary').append(articles);
});
});
我不清楚如何在这样的上下文中实现历史记录处理。我希望用户可以在单击后退按钮时向上滚动到上一个结果,并在有人点击文章时保留结果,然后返回结果。
现在,如果我在上面的点击功能结束时使用类似window.history.pushState('', '', link);
的内容,则会在推送链接时更改URL以查看下一篇文章。这是正确的。但是,如果我点击文章(例如/ page / 2)来查看它然后我点击后退按钮,它只显示包含该文章的页面结果(在我的例子中是/ page / 2) 。我想再次显示用户在离开存档页面之前看到的所有文章。
目前我还在使用window.localStorage来达到目标,但我想了解它是否只有历史记录以及如何才能实现。