是否有技巧(可能使用 iframe...)在不更改哈希或 URL 的任何其他部分的情况下向浏览器添加历史记录条目,同时与旧浏览器兼容(不早于 ie8 - 没有 pushstate )?
我知道这听起来很奇怪,但这是这个问题背后的逻辑:
我正在做一个单页应用程序,我想摆脱 模态作为弹出窗口。我使用相同的技术,但我不想在实际页面上方放置一个 div,而是想隐藏整个页面并仅显示代表模态的 div。
这很好用,但是现在模式占据了整个页面,用户倾向于(这很正常)点击后退按钮取消操作并返回到上一页(在显示模态)。
我知道我可以导航到不同的页面(通过更改散列),但我不希望 URL 更改,因为目标不是它自己的页面,而只是一个模式(复制没有意义模态的 URL 并将其传递给其他人或为模态添加书签 - 就像弹出窗口中的任何普通模态一样)。
我还需要能够在用户完成操作(在模式中)或单击取消按钮的情况下删除此条目。
最佳答案
我发现一篇文章解释了可能的解决方案(使用 iframe...):from the book Ajax Design Patterns
我会尽快尝试一下,并让您知道结果。
关于javascript - 在不更改哈希值或 URL 的任何其他部分的情况下将历史条目添加到浏览器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16681793/