小编典典

在后退按钮上保留动态更改的HTML

ajax

太神奇了,我一直在其他网站上看到它,但是在我正在工作的网站上却从未见过。

我正在用ajax引入新内容,我了解了history.js和History
API,我不想更改URL,只是让浏览器缓存新的HTML内容,以便当用户离开页面并使用后退按钮,它仍然具有更新的HTML。

我看到此方法一直在其他站点中一直有效,而无需更改URL或使用井号#。
是否有使它起作用的技巧,还是由浏览器随机决定?
如果我不想使用URL来获取此信息,是否有简单的选择?


阅读 191

收藏
2020-07-26

共1个答案

小编典典

在大约十年半的时间里,我一直在使用两个技巧,这些技巧是我一次又一次的反复试验发现的:输入字段值-尤其是“隐藏”值-与URL-AND-
onLoad事件一起保存在浏览器的历史记录中通过后退(或前进)按钮返回页面时会调用。

这意味着您可以在隐藏字段中存储任意多的“状态”(请记住将它们放在表单中),然后在“ onLoad”上“重做”更改。我通常将“
render”部分设为一个单独的函数…换句话说,在发生动态性时,我首先写入隐藏字段-
然后调用render函数。然后,我收集了所有各种渲染功能以实现各种动态特性,并从onLoad调用它们。

我要强调的是,我从未在任何手册中寻找它-因此无法提供任何保证-
但我已经可靠地使用了好一阵子了(自Netscape以来!!)它可以与“许多”浏览器(所有IE一起使用) ,chrome,FF-但其他的我从未尝试过。)

如果有人对我有一个更“正确”且不太繁琐的方式,我会很高兴听到的。但这确实可以解决问题。

2020-07-26