У меня есть веб-сайт, который читается как книга, первая страница рядом со следующей для предыдущей страницы. Подумайте об этом как о перемотке вперед и назад в книге. Его не предыдущая страница в браузере, ее внутри самих страниц. Как вы меняете страницы в книгеСохранение значения объекта на основе другого ключа объекта/значения
Я пытаюсь динамически назначать ссылки для кнопок предыдущей и следующей страницы. В настоящее время страницы находятся в объекте с 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>
Пример:
CurrentPage является about.html prevPage должен быть index.html
Вы можете создать еще один объект JS для управления номер текущей страницы и имя файла. Это облегчит вам изменение страницы отслеживания. Затем вы можете добавить onclick к своим тегам A, которые меняют все. –
Я думаю, ваша проблема связана с тем, как вы устанавливаете содержание текущей страницы и как вы устанавливаете ссылки на следующую страницу и предыдущую страницу. когда дело доходит до установки кнопок управления (prev, next), вам нужно полностью перезаписать их значения с правильными, а не добавлять. Вы также должны удалить любые вызовы на текущий URL-адрес, поскольку это не имеет значения в этом случае: вы не меняете сама страница, а только контент, который видит пользователь. Используйте Ajax, чтобы вытащить содержимое с сервера или заглянуть в файл с помощью javascript. –
Кроме того, вы действительно должны использовать событие onClick для своих ссылок в этом случае, потому что вы не меняете страницы вместо href, чтобы контролировать изменение контента. –