我有一个运行某种东西的JS应用程序。
我想禁用ctrl + r和f5,所以我没有刷新浏览器。
我完全禁用ctrl + r,并用我自己的处理方式(ajax,对RAP,DB的调用等)替换禁用的f5刷新。
两种机制都能在FF,Chrome,Opera和Safari上正常工作。
这意味着我可以使用垃圾邮件自动组合键,一切正常。
但是,在IE 9中,当我按f5快速顺序执行时,它会进行定期刷新,这对我来说意味着IE 9会花费很长时间进行操作,而它还没有准备好进行下一个按键功能。
$(document).keydown(function (event) {
if ((event.ctrlKey == true && (event.keyCode == 17 || event.keyCode == 82)) || (event.keyCode == 116)) {
event.preventDefault();
if (event.keyCode == 116) {
// Here is the own Reload Logic which contains calls on DB and Server.
}
if ($.browser.msie) {
window.event.stopPropagation();
window.event.keyCode = 0;
window.event.returnValue = false;
window.event.cancelBubble = true;
}
}
});
是否有可能以某种方式管理此问题以在IE 9中快速按f5键(使其一直处于禁用状态)?
最佳答案
您只能使用WebBrowserShortcutsEnabled阻止F5,但是您将杀死该页面上浏览器具有的所有其他快捷方式。您应该尝试阻止人们离开网页的过程。这将在您想要实现的目标中提高生产力。
window.onbeforeunload = function() {
return "You are trying to leave.";
}
请勿将其用作安全措施,例如参加网络测试/考试的学生。但是,如果只是为了防止意外刷新,就可以解决问题。
关于javascript - 在Internet Explorer 9中禁用F5,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14647207/