如果我向用户提供页面,例如:
<!DOCTYPE HTML>
<HTML>
<HEAD>
<SCRIPT type="text/javascript">
function cbCountry_Click()
{
var select = document.getElementById("cbCountry");
select.options[select.options.length] = new Option("Canada", "CA");
select.options[select.options.length] = new Option("United States", "US");
}
</SCRIPT>
</HEAD>
<BODY>
<SELECT id="cbCountry"></SELECT>
<P><BUTTON onclick="cbCountry_Click()">Get Countries</BUTTON>
<P><A href="http://google.com">Visit a link</A>
</BODY>
</HTML>
此页面具有修改自身的能力。在这种情况下,它是独立的 javascript,但想象一下它是 AJAX 代码。
如果用户然后点击一个链接前进,然后点击返回到这个页面;当页面被缓存时,它们将与页面一起呈现;而不是他们如何离开它:
有人解决了 AJAX 问题吗?
我注意到 Google 会定期将您页面的状态发送到服务器。如果您返回页面,他们会强制计时器刷新,这会从服务器刷新页面的状态。
我还注意到有些人只是强制页面不被缓存:
Cache-Control: nocache
防止页面被缓存。缺点是它会阻止页面被缓存。