记住在网站上按下的标签

时间:2011-03-17 11:55:23

标签: javascript jquery asp.net-mvc

我创建了自己的标签,其中包含超链接和div。我把它们放在侧边栏中。

当点击超链接时,我会在相关的div上使用jquerys .show()和hide()。

它的工作正常,但是,我想在用户导航时点击在网站上记住的最后一个链接/标签。

我该怎么做?

3 个答案:

答案 0 :(得分:3)

您最好的选择是使用cookie来存储活动标签的名称。然后,在页面加载时,使用JS检查cookie并将其用作显示正确选项卡和隐藏其他选项卡的基础。

我建议使用jQuery cookie插件来设置和读取cookie: http://plugins.jquery.com/project/Cookie

您的代码可能看起来像这样(快速草图,因此可能没有语法错误):

MARKUP

<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);
});

答案 1 :(得分:2)

您可以使用cookie(浏览器中保存的特定网站的信息)来实现。该cookie可以保留当前打开的选项卡。

http://www.electrictoolbox.com/jquery-cookies/

中有一个很好的指南

答案 2 :(得分:2)

您可以保存侧栏中最后点击的标签的ID。 e.g:

$("#sidebar").data("lastClickedTab", $("#theTab")[0].id);