Я создаю стиль нумерации страниц для своего сайта.Он состоит из кода из 4 частей: текст, который должен отображаться, номера страниц, кнопки «следующий» и «предыдущий», а также скрипт для определения, какая часть / страница текста отображается.
var current = 1;
var totalPages = document.getElementById("pageContainer").childElementCount;
function showPages(id = 1) {
if (id < 1 || id > totalPages)
return;
curr_page = document.getElementById("page" + current);
curr_page.classList.add("pageHidden");
curr_page.classList.remove("pageDisplayed");
target_page = document.getElementById("page" + id);
target_page.classList.add("pageDisplayed");
target_page.classList.remove("pageHidden");
current = id;
}
.pageHidden
{
display: none;
}
.pageDisplayed
{
display: block;
}
<div id="pageContainer">
<div class="pageDisplayed" id="page1"><p>page 1 displayed</p></div>
<div class="pageHidden" id="page2"><p>That is the second page.</p></div>
<div class="pageHidden" id="page3"><p>And finally a third one.</p></div>
</div>
<h2>pages :
<a href="#" id="1" onclick="showPages(1)">1</a>
<a href="#" id="2" onclick="showPages(2)">2</a>
<a href="#" id="3" onclick="showPages(3)">3</a>
</h2>
<h2>
<span style="float: left;">
<a href="#" onclick="showPages(current - 1)">Previous</a>
</span>
<span style="float: right;">
<a href="#" onclick="showPages(current + 1)">Next</a>
</span>
</h2>
Теперь я хотел бы отметить текущую страницу, которая отображается, изменив внешний вид ссылки.На данный момент он показывает «Pages: 1 2 3», и я хотел бы, чтобы он стал, например: «Pages: 1 [2] 3» (с другим цветом для помеченного «[2]».
Я нашел способы сделать это, но я не смог заставить его работать с кнопками «Далее» и «Предыдущий», которые при запуске не выделяли номер привязки.
В основном, если функция showPages возвращает «page2», якорь «2» с идентификатором «2» должен выглядеть так: [2].
Я думаю, это означает, что мне нужно сравнить идентификатор со страницыконтейнер, к id из части нумерации страниц ... Кто-нибудь знает, как я могу это сделать?