Javascript菜单记住位置

时间:2008-11-14 16:11:22

标签: javascript css

我目前正在为一个Web应用程序的JS菜单工作。它由两个条形组成,固定的主条形和子菜单通过Javascript功能激活(显示:从display:block中阻止)。通过onclick事件添加class =“main_on”和class =“sub_on”,也可以突出显示主菜单和子菜单的选定选项。有没有办法记住当用户点击F5或页面重新加载时哪些子菜单显示以及哪些选项当前被归类为活动?如果可能的话,我正在寻找一种非cookie和非数据库方法。

谢谢,

麦克

1 个答案:

答案 0 :(得分:5)

您可以使单击的链接/元素(对于onclick事件)在地址栏中设置URL哈希。 (即http://server.name/page#URLhash)如果是链接,则只需调整HREF属性,否则可能需要使用window.location进行操作。

设置当前状态。页面(重新)加载时,检查URL哈希的值。有关如何访问它的详细信息,请参阅http://developer.mozilla.org/en/DOM/window.location。如果URL哈希仍在地址栏中,您将能够获得该值。

然后使用该值确定要激活的菜单。因此,您可以通过这种方式恢复状态。

浏览器之间存在一些差异。搜索“Ajax历史记录”,其中有些人使用URL哈希来保存Ajax操作后的状态。不是你试图解决的完全相同的问题,但类似。查看RSH: http://code.google.com/p/reallysimplehistory/

将使用相同的想法。

相关问题