使用BACK按钮恢复到页面的先前状态

1qa*_*sw2 5 html javascript button back

我正在为我的网站尝试新功能.我想隐藏/显示<div>元素来做简单的导航.

例如,当用户单击某个产品上的"详细信息"按钮时,我想隐藏主要内容<div>并显示<div>包含产品详细信息的内容.

问题是,要返回上一个"页面",我必须撤消所有显示/可见性样式更改,如果用户单击新打开的"关闭"按钮,则可以<div>.但大多数用户会点击BACK按钮.

有没有办法让BACK按钮返回到页面的前一个"状态",即撤消可见性/显示变化?

谢谢.

Pet*_*ley 6

是.您正在寻找的是AJAX浏览器历史记录.

有一些开放的实现,如RSH以及jQueryYUI等框架的插件/模块.


Kev*_*vin 4

回答你的标题问题(这就是我一直在寻找的)

使用“BACK”按钮恢复到页面之前的状态

从 @reach4thelasers 的回答的链接中,您必须设置一个计时器并一次又一次检查当前锚点:

//On load page, init the timer which check if the there are anchor changes each 300 ms  
$().ready(function(){  
   setInterval("checkAnchor()", 300);  
});
Run Code Online (Sandbox Code Playgroud)

因为按下按钮时不会触发 Javascript 回调BACK,并且仅更改锚点...

--

顺便说一句,您所说的模式现在被称为单页界面

  • HTML 5 改进了这些点,请参阅[History API](http://html5demos.com/history) (3认同)