想要禁用网站的后退按钮
每当用户点击浏览器后退按钮时,它就不能进入他之前访问过的页面。
答案 0 :(得分:238)
history.pushState(null, null, document.title);
window.addEventListener('popstate', function () {
history.pushState(null, null, document.title);
});
此脚本将覆盖尝试使用当前页面的状态来回导航。
更新
有些用户报告使用document.URL
代替document.title
取得了更大的成功:
history.pushState(null, null, document.URL);
window.addEventListener('popstate', function () {
history.pushState(null, null, document.URL);
});
答案 1 :(得分:20)
一个人无法禁用浏览器后退按钮功能,只有可以做的事情就是阻止他们。
以下JavaScript代码需要放在页面的head部分,您不希望用户使用后退按钮重新访问:
<script>
function preventBack(){window.history.forward();}
setTimeout("preventBack()", 0);
window.onunload=function(){null};
</script>
假设有两个页面Page1.php
和Page2.php
以及Page1.php
重定向到Page2.php
。
因此,为防止用户使用后退按钮访问Page1.php
,您需要将上述脚本放在Page1.php
的标题部分。
了解更多信息:Reference
答案 2 :(得分:-10)
我们的方法很简单,但是工作! :)
当用户点击我们的LogOut按钮时,我们只需打开登录页面(或任何页面)并关闭我们的页面...模拟在新浏览器窗口中打开w /无历史记录返回。
<input id="btnLogout" onclick="logOut()" class="btn btn-sm btn-warning" value="Logout" type="button"/>
<script>
function logOut() {
window.close = function () { window.open('Default.aspx', '_blank'); };
}
</script>
答案 3 :(得分:-32)
你不能,也不应该。
每个其他方法/替代方案只会导致用户参与度非常差。这是我的意见。