我有一个网站,其内容类似于一本书,第一页显示在上一页的旁边。把它看作是一本书的前后页翻页。它不是浏览器中的上一页,它在页面内。就像你正在改变书中的页面基于另一个对象键/值存储对象值
我想动态分配上一页和下一页按钮的链接。目前页面位于一个对象中,pageNum和fileName作为键
我想根据当前页面链接的页码设置上一个链接。请参阅下面的示例和代码。
var toc = [
{"pageNum": "1", "fileName": "index.html"},
{"pageNum": "2", "fileName": "about.html"},
{"pageNum": "3", "fileName": "work.html"},
{"pageNum": "4", "fileName": "blog.html"},
{"pageNum": "5", "fileName": "contact.html"},
];
var url = window.location.pathname;
var currentPage = url.substring(url.lastIndexOf('/')+1);
var prevPageNum;
var prevPage;
//Based on currentPage, find object entry in toc and apply related pageNum
toc.filter(function(toc){
if(toc.fileName == currentPage) {
$('#currentPageNumber').append(toc.pageNum);
}
});
/******* Last and Next Page Assignment *******/
toc.filter(function(toc){
if(toc.fileName == currentPage) {
prevPageNum = toc.pageNum-1;
prevPage = toc.fileName;
$('#prevPage').append(prevPage);
//final code
//$('#prevPage').attr("href",prevPage);
}
});
<a href="#" id="prevPage">Previous Page</a>
<a href="#" id="nextPage">Next Page</a>
例:
当前页是about.html prevPage必须的index.html
您可能希望创建另一个JS对象来控制当前页码和文件名。这会使跟踪页面变更更容易。然后你可以添加一个onclick到你的A标签来切换一切。 –
我认为您的问题与您如何设置当前页面的内容以及设置下一页和上一页链接的方式有关。当设置控制按钮(prev,next)时,您需要使用正确的值而不是附加值来完全覆盖它们的值。您还应该删除对当前网址的任何调用,因为这种情况无关紧要:您不会将网页本身仅改为用户看到的内容。使用Ajax从服务器拉回内容或查看通过JavaScript拉入文件。 –
此外,在这种情况下,您确实应该为链接使用onClick事件,因为您并不真正更改页面而不是href来控制内容更改。 –