實用javaScript技術總結(1)屏蔽類
一、屏蔽鍵盤所有鍵
<script language="javascript">
<!--
function document.onkeydown(){
event.keyCode = 0;
event.returnvalue = false;
}
-->
</script>
二、屏蔽滑鼠右鍵
在body標籤裡加上oncontextmenu=self.event.returnvalue=false 或者:
<script language="javascript">
<!--
function document.oncontextmenu()
{
return false;
}
-->
</script>
<SCRIPT language=javascript>
function click() {
if (event.button==2) {
alert('對不起,本頁內容禁止拷貝!')
}
}
document.onmousedown=click
</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>
三、屏蔽 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 鍵不放,用滑鼠點掉警告框,這種屏蔽方法就失效了。
if ((event.keyCode == 8) &&
(event.srcElement.type != "text" &&
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>
四、屏蔽瀏覽器右上方“最小化”“最大化”“關閉”鍵
<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"//使不能關閉視窗
五、屏蔽F5鍵
<script language="javascript">
<!--
function document.onkeydown()
{
if ( event.keyCode==116)
{
event.keyCode = 0;
event.cancelBubble = true;
return false;
}
}
-->
</script>
六、屏蔽IE後退按鈕
在你連結的時候用
<a href="javascript:location.replace(url)">
七、屏蔽主視窗捲軸
在body標籤裡加上
style="overflow-y:hidden"
八、屏蔽拷屏,不斷地清空剪貼簿
在body標籤裡加上
onload="setInterval('clipboardData.setData(/'Text/',/'/')',100)"
九、屏蔽網站的列印功能
<style>
@media print {
* { display: none }
}
</style>
十、屏蔽IE6.0 圖片上自動出現的儲存表徵圖
方法一:
<META HTTP-EQUIV="imagetoolbar" CONTENT="no">
方法二:
<img galleryimg="no">
十一、屏蔽頁中所有的script
<noscrript></noscript>