这篇文章将为大家详细讲解有关javascript怎么实现禁止刷新效果,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
js禁止刷新的方法:首先使用“window.event”检测键盘事件对应的内码;然后将内码与“ctrl+R”,F5键,“ctrl+F5”键的键值码进行对比;如果值相同,则设置“returnValue”值为false,取消刷新事件的发生即可。
本教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。
document.onkeydown = function(e) {
e = window.event || e;
var k = e.keyCode;
//屏蔽ctrl+R,F5键,ctrl+F5键 F3键!验证
if ((e.ctrlKey == true && k == 82) || (k == 116)
|| (e.ctrlKey == true && k == 116)||k==114) {
e.keyCode = 0;
alert("当前页面不能刷新!");
e.returnValue = false;
e.cancelBubble = true;
return false;
}
if (k == 8) {
alert("不能返回或后退!");
e.keyCode = 0;
e.returnValue = false;
return false;
}
//屏蔽 Ctrl+n 验证可以实现效果
if (e.ctrlKey && k == 78){
e.keyCode = 0;
e.returnValue = false;
e.cancelBubble = true;
return false;
}
//屏蔽F11 验证可以实现效果
if (k == 122) {
e.keyCode = 0;
e.returnValue = false;
e.cancelBubble = true;
return false;
}
//屏蔽 shift+F10 验证可以实现效果
if ((e.shiftKey && k == 121)||(e.ctrlKey && k == 121)){
e.keyCode = 0;
e.returnValue = false;
e.cancelBubble = true;
return false;
}
//屏蔽Alt+F4
if ((e.altKey) && (k== 115)) {
window.showModelessDialog("about:blank", "",
"dialogWidth:1px;dialogheight:1px");
e.keyCode = 0;
e.returnValue = false;
e.cancelBubble = true;
return false;
}
//屏蔽 Alt+ 方向键 ← ;屏蔽 Alt+ 方向键 → !验证
if ((e.altKey)
&& ((k == 37) || (k == 39))) {
alert("不准你使用ALT+方向键前进或后退网页!");
e.keyCode = 0;
e.returnValue = false;
e.cancelBubble = true;
return false;
}
};
//屏蔽右键菜单,!验证
document.oncontextmenu = function(event) {
if (window.event) {
event = window.event;
}
try {
var the = event.srcElement;
if (!((the.tagName == "INPUT" && the.type.toLowerCase() == "text") || the.tagName == "TEXTAREA")) {
return false;
}
return true;
} catch (e) {
return false;
}
};
关于“javascript怎么实现禁止刷新效果”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。