Вы можете использовать хеш-теги для уникальной идентификации каждой вкладки, поэтому http://example.com/yourpage.html#current-points
переводит вас на вкладку current-points
, а http://example.com/yourpage.html#my-details
- на вкладку my-details
. Вы можете установить хеш, присвоив location.hash
, и, конечно, вы можете прочитать это при загрузке страницы. Это также имеет огромное преимущество в том, что ваши пользователи могут добавлять закладки в закладки. Вы можете использовать путь в хэше, если у вас есть вкладки во вкладках (поэтому #first/foo
переводит вас на вкладку first
, а ее вложенная вкладка foo
; #first/bar
- на вкладку first
и ее bar
вкладка нижнего).
Вот очень простой пример (без вложенных вкладок, но вы поняли):
Живая копия | Живой источник
HTML:
<ul id="nav">
<li><a href="#first">First</a></li>
<li><a href="#second">Second</a></li>
<li><a href="#third">Third</a></li>
</ul>
<div class="tab" id="tab-first">This is first</div>
<div class="tab" id="tab-second">This is second</div>
<div class="tab" id="tab-third">This is third</div>
JavaScript:
jQuery(function($) {
$("<p>").html("Loaded at " + new Date()).appendTo(
document.body
);
showTab(location.hash || "first");
$("#nav a").click(function() {
var hash = this.getAttribute("href");
if (hash.substring(0, 1) === "#") {
hash = hash.substring(1);
}
location.hash = hash;
showTab(hash);
return false;
});
function showTab(hash) {
$("div.tab").hide();
$("#tab-" + hash).show();
}
});
В качестве альтернативы (или вместе) вы можете установить cookie-файл, когда они меняют вкладки, и проверять наличие cookie-файла при загрузке страницы, чтобы выбрать последнюю выбранную вкладку.