Php 带有动态内容的Ajax后退按钮

Php 带有动态内容的Ajax后退按钮,php,jquery,ajax,Php,Jquery,Ajax,我使用JQuery和Ajax创建了一个页面,帮助用户筛选一系列选项,并最终显示符合其规格的产品的筛选列表 这一切都很好 我遇到的问题是Ajax的“后退按钮”问题,我知道如何通过静态内容上的锚来解决这个问题(即Filter.php#Step2) 但是,该页面通过返回产品规范列表来工作,当单击规范链接时,Ajax将应用链接参数再次加载同一页面,重复最多六次,之后,用户将重定向到过滤后的产品URL 如果用户随后单击“后退”,那么当然,过滤器页面将从步骤1而不是最后一步(步骤6)重新加载 有人知道这是否

我使用JQuery和Ajax创建了一个页面,帮助用户筛选一系列选项,并最终显示符合其规格的产品的筛选列表

这一切都很好

我遇到的问题是Ajax的“后退按钮”问题,我知道如何通过静态内容上的锚来解决这个问题(即Filter.php#Step2)

但是,该页面通过返回产品规范列表来工作,当单击规范链接时,Ajax将应用链接参数再次加载同一页面,重复最多六次,之后,用户将重定向到过滤后的产品URL

如果用户随后单击“后退”,那么当然,过滤器页面将从步骤1而不是最后一步(步骤6)重新加载


有人知道这是否可能吗

我不能说我以前亲自实现过,但我记得jQuery工具选项卡组件也做过类似的事情。我不确定这是否适用于您的特定情况,但可能值得将他们的方法作为出发点


我不能说我以前亲自实现过,但我记得jQuery工具选项卡组件也做过类似的事情。我不确定这是否适用于您的特定情况,但可能值得将他们的方法作为出发点


每次您想要返回到上一步,请更改window.location.hash

这将更改URL中的#foo部分。您还需要JavaScript中的计时器来检查哈希是否已更改,因为无法可靠地检测返回按钮。类似于

var oldHash = window.location.hash;
setInterval(function(){
  if(window.location.hash != oldHash) {
    //the hash was changed, do something
  }
}, 50);

我希望这有助于

每次您希望能够回到上一步,更改window.location.hash

这将更改URL中的#foo部分。您还需要JavaScript中的计时器来检查哈希是否已更改,因为无法可靠地检测返回按钮。类似于

var oldHash = window.location.hash;
setInterval(function(){
  if(window.location.hash != oldHash) {
    //the hash was changed, do something
  }
}, 50);

我希望这有帮助

我看了一下,我认为它是为静态内容而设计的,而不是为捕捉动态查询字符串。我看了一下,我认为它是为静态内容而设计的,而不是为捕捉动态查询字符串。你的帖子让我想起了我在上一段时间读过的一篇教程,我将在上一篇文章中介绍很合适。你的帖子让我想起了我不久前在学校读过的一篇教程,我会在不久前给它看是否合适。