запомнить вкладку нажатой по всему сайту
Я создал свои собственные вкладки с гиперссылками и дивами. я помещаю их в боковую панель.
Я использую jquerys .show() и hide() на соответствующих divs при нажатии на гиперссылку.
Его работа в порядке, однако, я хотел бы, чтобы последняя ссылка / вкладка была нажата, чтобы помнить по всему сайту, как пользователь переходит.
Как я могу это сделать?
3 ответов:
Лучше всего использовать файл cookie для хранения имени активной вкладки. Затем, при загрузке страницы, проверьте файл cookie с помощью JS и используйте его в качестве основы для отображения правильной вкладки и скрытия остальных.
Я бы рекомендовал плагин jQuery cookie для настройки и чтения файлов cookie.: http://plugins.jquery.com/project/Cookie
Ваш код может выглядеть примерно так (быстрый набросок, поэтому может не быть свободным от синтаксиса ошибки):
Разметка
<ul id="tabs"> <li id="tab-a">First tab</li> <li id="tab-b">Second tab</li> <li id="tab-c">Third tab</li> </ul>JAVSCRIPT
//On Window load: if ($.cookie('activetab')) { var activetabId = $.cookie('activetab'); $('#tabs li').removeClass('active'); $('#'+activetabId).addClass('active'); } //On tab click $('#tabs li')click(function(){ var id = $(this).attr('id'); $.cookie('activetab',id); });
Вы можете сделать это с помощью куки (часть информации, хранящейся в браузере для конкретного сайта). Этот файл cookie может сохранить текущую открытую вкладку.
Есть хороший гид в http://www.electrictoolbox.com/jquery-cookies/
Вы можете сохранить идентификатор вкладки, которая была нажата последней в боковой панели. например:
$("#sidebar").data("lastClickedTab", $("#theTab")[0].id);
Comments