如何禁用浏览器的后退,前进和刷新按钮?

时间:2017-01-16 13:30:53

标签: browser

我想禁用浏览器的导航按钮:后退,前进和刷新。这适用于使用jQuery进行测验的学生。

我尝试了以下代码,但它无效:

window.history.forward();
function preventBack() { window.history.forward(1); }
  function disableBackButton() {
  window.history.forward();
}
setTimeout("disableBackButton()", 0);

2 个答案:

答案 0 :(得分:1)

你做不到。这将允许网站所有者劫持用户的浏览器。想象一下,如果你被困在一个你无法离开的页面上。如果用户想要离开,刷新或关闭选项卡,则浏览器必须允许此行为。

话虽如此,你可以做点什么

$(window).on('beforeunload', function () {
    $.ajax('/mark-the-user-as-failed') // you may not get the response
    return 'You are not allowed to leave or refresh the page. This attempt has been logged.'
})

然而,这也将在表单提交 - 即合法请求 - 上触发,因此您需要通过删除处理程序或使用信号量变量来处理这些情况。

答案 1 :(得分:0)

document.ready上的

使用此行..

window.history.forward(-1)

希望它有效