如何使用JavaScript或Java清除浏览器(IE,Firefox,Opera,Chrome)历史记录,而不是从浏览器自身清除?
浏览器中的document.location数据通常对脚本不可见,因为允许访问会使任何网站都能够访问您的整个浏览历史记录。最多只能进行一些简单的操作,比如“转到历史记录条目#37”或“返回上一页”。但是您无法执行“历史记录条目#23的页面地址是什么”的操作。
大多数银行网站将使用JavaScript链接来防止建立点击历史记录。它们会执行document.location.replace"以删除最后一个历史记录条目(当前页面),并用新页面的地址替换它。这实际上删除了“返回”选项以返回上一页,因为之前的页面(就浏览历史记录而言)现在是新页面。
浏览器不会让你清除它的缓存,如果这是可能的话,那将是一个巨大的安全问题。
你可以做的是通过发送适当的头信息或使用这些meta标签来告诉浏览器不要缓存你的页面:
<meta http-equiv='cache-control' content='no-cache'>
<meta http-equiv='expires' content='0'>
<meta http-equiv='pragma' content='no-cache'>
但是如果你想要清除实际页面,你可以使用:
$(function () {
//replace() does not keep the originating page in the session history,
document.location.replace("/Exercises#nocache"); // clear the last entry in the history and redirect to new url
});