日期:2014-05-16  浏览次数:20387 次

用javascript屏蔽功能键

1.屏蔽功能类?


1.1 屏蔽键盘所有键?
<script language="javascript">?
<!--?
function document.onkeydown(){?
event.keyCode = 0;?
event.returnvalue = false;?
}?
-->?
</script>?

1.2 屏蔽鼠标右键?

在body标签里加上oncontextmenu=self.event.returnvalue=false?

或者?

<script language="javascript">?
<!--?
function document.oncontextmenu()?
{?
return false;?
}?
-->?
</script>?

function nocontextmenu()?
{?
if(document.all) {?
event.cancelBubble=true;?
event.returnvalue=false;?
return false;?
}?
}?

或者?

<body onmousedown="rclick()" oncontextmenu= "nocontextmenu()">?

<script language="javascript">?
<!--?
function rclick()?
{?
if(document.all) {?
if (event.button == 2){?
event.returnvalue=false;?
}?
}?
}?
-->?
</script>?


1.3 屏蔽 Ctrl+N、Shift+F10、F5刷新、退格键?

<script language="javascript">?
<!--?
//屏蔽鼠标右键、Ctrl+N、Shift+F10、F5刷新、退格键?
function window.onhelp(){return false} //屏蔽F1帮助?
function KeyDown(){?
if ((window.event.altKey)&&?
((window.event.keyCode==37)|| //屏蔽 Alt+ 方向键 ←?
(window.event.keyCode==39))){ //屏蔽 Alt+ 方向键 →?
alert("不准你使用ALT+方向键前进或后退网页!");?
event.returnvalue=false;?
}?

/* 注:这还不是真正地屏蔽 Alt+ 方向键,?
因为 Alt+ 方向键弹出警告框时,按住 Alt 键不放,?
用鼠标点掉警告框,这种屏蔽方法就失效了。以后若?
有哪位高手有真正屏蔽 Alt 键的方法,请告知。*/?

if ((event.keyCode ==event.srcElement.type != "textarea" &&?
event.srcElement.type != "password") || //屏蔽退格删除键?
(event.keyCode ==116)|| //屏蔽 F5 刷新键?
(event.ctrlKey && event.keyCode==82)){ //Ctrl + R?
event.keyCode=0;?
event.returnvalue=false;?
}?
if ((event.ctrlKey)&&(event.keyCode==78)) //屏蔽 Ctrl+n?
event.returnvalue=false;?
if ((event.shiftKey)&&(event.keyCode==121)) //屏蔽 shift+F10?
event.returnvalue=false;?
if (window.event.srcElement.tagName == "A" && window.event.shiftKey)?
window.event.returnvalue = false; //屏蔽 shift 加鼠标左键新开一网页?
if ((window.event.altKey)&&(window.event.keyCode==115)){ //屏蔽Alt+F4?
window.showModelessDialog("about:blank","","dialogWidth:1px;dialogheight:1px");?
return false;}?
}?
/* 另外可以用 window.open 的方法屏蔽 IE 的所有菜单?
第一种方法:?
window.open("你的.htm", "","toolbar=no,location=no,directories= no,menubar=no,scrollbars=no,resizable=yes,status=no,top=0,left=0")?
第二种方法是打开一个全屏的页面:?
window.open("你的.asp", "", "fullscreen=yes")?
*/?
//-->?
</script>?

1.4屏蔽浏览器右上角“最小化”“最大化”“关闭”键?

<script language=javascript>?
function window.onbeforeunload()?
{?
if(event.clientX>document.body.clientWidth&&event.clientY<0||event.altKey)?
{?
window.event.returnvalue = "";?
}?
}?
</script>?

或者使用全屏打开页面?

<script language="javascript">?
<!--?
window.open(www.32pic.com,"32pic","fullscreen=3,height=100, width=400, top=0, left=0, toolbar=no, menubar=no, scrollbars=no, resizable=no,location=no, status=no");?
-->?
</script>?

注:在body标签里加上onbeforeunload="javascript:return false"(使不能关闭窗口)?

1.5屏蔽F5键?

<script language="javascript">?
<!--?
function document.onkeydown()?
{?
if ( event.keyCode==116)?
{?
event.keyCode = 0;?
event.cancelBubble = true;?
return false;?
}?
}?
-->?
</script>?

1.6屏蔽IE后退按钮?

在你链接的时候用 <a href="javascr