ITPub博客

首页 > Linux操作系统 > Linux操作系统 > JS屏蔽功能类(屏蔽F5,退格键,空格键......

JS屏蔽功能类(屏蔽F5,退格键,空格键......

原创 Linux操作系统 作者:wangwenbincom 时间:2009-08-14 17:37:42 0 删除 编辑
1.屏蔽功能类ITPUB个人空间Ar~${ d8L4Y
ITPUB个人空间0O:n2A d;w s
1.1 屏蔽键盘所有键ITPUB个人空间\3Z0Ce5{

4i#tb(G` \22328375<!--ITPUB个人空间 UF(`jm }P%k
function document.onkeydown(){ITPUB个人空间)F[XWg6xjVl
event.keyCode = 0;ITPUB个人空间]vGBaz
event.returnvalue = false;ITPUB个人空间u u(o*F Ud(C
}ITPUB个人空间 vz,ri {pF9}
-->ITPUB个人空间-f4M(I*{{B'}e
ITPUB个人空间 `rj)Tz5O)MHI w4m
ITPUB个人空间7]y#Z\ ]
1.2 屏蔽鼠标右键ITPUB个人空间R'e,cg'kfCdT
ITPUB个人空间,B7j$]BE _J'YWk
在body标签里加上oncontextmenu=self.event.returnvalue=false
1ti_zs0H22328375
6ZO:Y#]G9~e22328375或者
?h4Z:Cx1`22328375
4G x4Gb*v22328375ITPUB个人空间6a,uppks1J(O
<!--
/JXr \+S22328375function document.oncontextmenu()ITPUB个人空间}N)W\d
{
G f'v(W}+[ MS8r*H22328375return false;ITPUB个人空间f/{ }7RB
}
uWK1JuD `22328375-->
-T uuv7R22328375ITPUB个人空间B#i LK8_ZN
ITPUB个人空间1Fg?I#B
function nocontextmenu()
:q8?:b$@ f(E^22328375{
c|*T$O*vF&k22328375if(document.all) {
6]j1D1p T1jQ R8]22328375event.cancelBubble=true;ITPUB个人空间T n-K'dtN
event.returnvalue=false;
1N.w:H%i4iX22328375return false;
~9@FJ)T4},Zp22328375}
hS,V2P$]-a!It22328375}
|&G9C5GF0{ T22328375
(t%oEYr5Y/R&Z22328375或者ITPUB个人空间x'P@e6G|L

;Ke%d z0@`5}22328375ITPUB个人空间!m3UN"I1^h

F&m"i%wB!FwJ22328375ITPUB个人空间'J(jD\ }-W&MB
<!--
j3J`Cs"m^o-g!g22328375function rclick()ITPUB个人空间gz _D2n,Fm K-X:X
{ITPUB个人空间N2M{Z&`c
if(document.all) {
?/w0b _9w0`2\mG]22328375if (event.button == 2){ITPUB个人空间/h}^fX
event.returnvalue=false;
}j uu.fi22328375}
/~,@IiL22328375}ITPUB个人空间||(_f8].t~ ` S/Y,^
}
Q` M9q;y4`,m|22328375-->
1?J5[nfp x22328375ITPUB个人空间*Xezm"a1x6n

%R&B/iB} k8G22328375
5Qj5j0EP:V(^223283751.3 屏蔽 Ctrl+N、Shift+F10、F5刷新、退格键ITPUB个人空间/QZ,N}}J
ITPUB个人空间(w#G eZ1Fk;V2r
ITPUB个人空间3n0d;E7}Y.w,d%l
<!--ITPUB个人空间ANAi*E)GV4P"A
//屏蔽鼠标右键、Ctrl+N、Shift+F10、F5刷新、退格键
GCcl:F\T$y!ua22328375function window.onhelp(){return false} //屏蔽F1帮助ITPUB个人空间e3w"KcA y_;?
function KeyDown(){ITPUB个人空间2p)YSf!gJ`^#R
if ((window.event.altKey)&&
IC;P1QCmf6Lb)J7s22328375((window.event.keyCode==37)|| //屏蔽 Alt+ 方向键 ←ITPUB个人空间TmQ:X/U1}D-| e? N
(window.event.keyCode==39))){ //屏蔽 Alt+ 方向键 →ITPUB个人空间;R.a9iZ(I c
alert("不准你使用ALT+方向键前进或后退网页!");
3O.|,jz!B22328375event.returnvalue=false;ITPUB个人空间8~,VQn6FJ"]
}ITPUB个人空间*Y'R4k b a?]l.X {
ITPUB个人空间hmvO+KEpT!d
/* 注:这还不是真正地屏蔽 Alt+ 方向键,ITPUB个人空间3b1a/L*FJ/TFd
因为 Alt+ 方向键弹出警告框时,按住 Alt 键不放,ITPUB个人空间WW sly*? X
用鼠标点掉警告框,这种屏蔽方法就失效了。以后若ITPUB个人空间z[Md(?7m
有哪位高手有真正屏蔽 Alt 键的方法,请告知。*/ITPUB个人空间4` |n FN2d9Y*X#n
ITPUB个人空间4`)Q+B!` I`1B$J
if ((event.keyCode == 8) &&
*v Z6J&R?[ vA9TxT22328375(event.srcElement.type != "text" &&
'|(B!Kro6[8E@4j22328375event.srcElement.type != "textarea" &&ITPUB个人空间0_8U9ViJCG/?C,Q"c
event.srcElement.type != "password") || //屏蔽退格删除键ITPUB个人空间5H8~CI~;\2K6iU
(event.keyCode ==116)|| //屏蔽 F5 刷新键
:`j6agF-O.E9A4u4XX22328375(event.ctrlKey && event.keyCode==82)){ //Ctrl + RITPUB个人空间 BOD zr:no,tw
event.keyCode=0;ITPUB个人空间;h7a$E_X2u
event.returnvalue=false;ITPUB个人空间re4O,V r|-xQ;]Tf/v
}ITPUB个人空间M)zq2V*Y)\
if ((event.ctrlKey)&&(event.keyCode==78)) //屏蔽 Ctrl+nITPUB个人空间'RL,Jv P/Nv is
event.returnvalue=false;ITPUB个人空间c2?2H@-JN
if ((event.shiftKey)&&(event.keyCode==121)) //屏蔽 shift+F10ITPUB个人空间Z1qNGh \i6e
event.returnvalue=false;
:f;G9Wv6il(U!I22328375if (window.event.srcElement.tagName == "A" && window.event.shiftKey)
C o r*n6u(ggJ22328375window.event.returnvalue = false; //屏蔽 shift 加鼠标左键新开一网页ITPUB个人空间#c A!K`py/H?
if ((window.event.altKey)&&(window.event.keyCode==115)){ //屏蔽Alt+F4ITPUB个人空间g&RIh Lc
window.showModelessDialog("about:blank","","dialogWidth:1px;dialogheight:1px");
vg$e,R-uk \z22328375return false;}
&b+ptir8r;zDB(A?W22328375}ITPUB个人空间M!Ea0ld
/* 另外可以用 window.open 的方法屏蔽 IE 的所有菜单ITPUB个人空间8E7pq9W:iJ#x\
第一种方法:
:_&b A N/gnt22328375window.open("你的.htm", "","toolbar=no,location=no,directories= no,menubar=no,scrollbars=no,resizable=yes,status=no,top=0,left=0")
&U2a#b S'b~0uy'\(h+I22328375第二种方法是打开一个全屏的页面:
(e y$J\0KM22328375window.open("你的.asp", "", "fullscreen=yes")
&j"K/}s Fs9DPd22328375*/ITPUB个人空间&WQyY,UK
//-->ITPUB个人空间T6q5Y"a_"^f T
ITPUB个人空间l` d:Zxc/~1g
ITPUB个人空间w6e-J:l2^6h`c`t
1.4屏蔽浏览器右上角“最小化”“最大化”“关闭”键ITPUB个人空间,ibxu1e9F?
ITPUB个人空间m.xCF4p0D$e
ITPUB个人空间i~oi5y/zbzu0]
function window.onbeforeunload()ITPUB个人空间~s*Cj/y+eW3h8WF*E
{
4WP6N L]xz22328375if(event.clientX>document.body.clientWidth&&event.clientY<0||event.altKey)
*jJ&C[H,sCr|0pj22328375{ITPUB个人空间d:B5C6jI
window.event.returnvalue = "";
A:ce}O22328375}
$sJKR BL22328375}
H s rZ}xJ+e22328375ITPUB个人空间,WSh c!lo^J/^:g

9s2n@3J v'Xn%fR h22328375或者使用全屏打开页面ITPUB个人空间`$t0u7yT[9{
ITPUB个人空间 `H4XV9SB(U9p

-K5W W gH|v7s22328375<!--ITPUB个人空间i*W$ht8Z g
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");
K iv.p}b22328375-->
:j,~OGCG#N22328375ITPUB个人空间;ZW5rEb0LKmM

t"c3y1`.U7U22328375注:在body标签里加上onbeforeunload="javascript.:return false"(使不能关闭窗口)
S{X.k9[;H^*T-q22328375ITPUB个人空间2s8R x1Q-X([
1.5屏蔽F5键ITPUB个人空间^Cy}}yofy

BHx8{?]22328375ITPUB个人空间 A\k#|;PxK*\
<!--ITPUB个人空间p5k k/Th S+@
function document.onkeydown()ITPUB个人空间h3px {4v)bvoS
{
#E@VlX;q7rT.t*t22328375if ( event.keyCode==116)ITPUB个人空间q)MJ)V/m/y&w
{
DN$Ach;Y22328375event.keyCode = 0;
[:n#w^9G}c22328375event.cancelBubble = true;
|2FcFP2[V-W,n` {22328375return false;ITPUB个人空间9l7} tQ-E tM-{2U'm
}
L+H |$M'k22328375}
RPyD'W0QSAx[22328375-->
T:m;Zx4Me,R3sy+f22328375
E8km-cd?w22328375ITPUB个人空间2D7L?5z ~I!S
1.6屏蔽IE后退按钮ITPUB个人空间/k0b:Zg|4XN$D6G6K
ITPUB个人空间{8R j!}8r W:q:V4~ Q)D
在你链接的时候用
ZF BXqF,`$[WG22328375
7w8v5N Hm8b223283751.7屏蔽主窗口滚动条ITPUB个人空间dk[8J#p"h^

tt7[ pGM"Z22328375在body标签里加上 style="overflow-y:hidden"ITPUB个人空间0O+WtU'k A,{(Lh;f

;f9[ROqA'd223283751.8 屏蔽拷屏,不断地清空剪贴板
nG'n {-\22328375
.v~Jl*LG22328375在body标签里加上onload="setInterval('clipboardData.setData(\'Text\',\'\')',100)"ITPUB个人空间\9^3T\!_{A0FAm
ITPUB个人空间_-E8d7wE%Wi [s
1.9 屏蔽网站的打印功能
)@C)W,a~@&ghH22328375ITPUB个人空间2j*]x0T1iyO3_

H#t5^2D6R3h22328375ITPUB个人空间cy:f1ZRu
1.10 屏蔽IE6.0 图片上自动出现的保存图标ITPUB个人空间W |#W(k0b2L*P&~

EH!\Z!qEWV22328375方法一:
#x"Y:s#q,A0Qi22328375
D%jc k ~W22328375方法二:
$YrV i1X;w$`7q7l22328375ITPUB个人空间!jPTA'F3z;g,@

DA;r,WD V;?e8tI9p223283751.11 屏蔽页中所有的script
O4Jg6V/D ]|aw22328375ITPUB个人空间6Q"k;uT(X

s6Aa2Hr22328375ITPUB个人空间8}.o&HcA|?

B%lN9U4_Z223283752.表单提交验证类
t h$XR2W'k8FE22328375
Abj Bl/n22328375ITPUB个人空间$Y^$VjgI%j7Q#V
2.1 表单项不能为空
y C(j;`8DA$N*R22328375
%a&q-^0_]-}`1b22328375
ce:A7R'l8?3Fw0M22328375<!--
#F`af&RA o22328375function CheckForm()ITPUB个人空间OO oQ,S@ ~!Pi ~&A
{
BAt:uK22328375if (document.form.name.value.length == 0) {
x4X/h'zN c3WA22328375alert("请输入您姓名!");
xN+pVGg&CK22328375document.form.name.focus();ITPUB个人空间E!_W"~!p,X&zRn
return false;ITPUB个人空间rQ7n Mo2w~EG
}ITPUB个人空间'A Unk;t#~Vk ?g{{
return true;
QsRrJ/S22328375}ITPUB个人空间'iF$Wq oN0H
-->
s6A2Dn:Z6j4\,K22328375ITPUB个人空间1Y*LYaeO7g
ITPUB个人空间(g,@9b}B~
2.2 比较两个表单项的值是否相同ITPUB个人空间o M1@rj\7Sg

N!\d:~:U$l H22328375ITPUB个人空间jW2B"o B
<!--ITPUB个人空间xN8J pF.X!o0tS
function CheckForm()
/M6QU[gS`5Y22328375if (document.form.PWD.value != document.form.PWD_Again.value) {
;u"f}^-_mz"[22328375alert("您两次输入的密码不一样!请重新输入.");ITPUB个人空间j!`/Jo.m@[ _*v
document.ADDUser.PWD.focus();ITPUB个人空间*A bOQi)[W!Q
return false;ITPUB个人空间f/D&~HV
}
,E{a+j}+L3`&f22328375return true;
)pyt*VA1Y.\22328375}
TO EB4i0K22328375-->
i^1[:z Hp-@3Rh1X22328375ITPUB个人空间.f.`7B2xT{%Jp!V-nI

1Tj/k%StsJ223283752.3 表单项只能为数字和"_",用于电话/银行帐号验证上,可扩展到域名注册等
%Lq~E/S r22328375ITPUB个人空间'U&AD,_ Q |

KL L2e b%v-P1N#k)V22328375<!--
w {@ R5N-B$Q22328375function isNumber(String)ITPUB个人空间"{/a7h$].hCc"y"I t V/A
{ITPUB个人空间S;X;[UE x
var Letters = "1234567890-"; //可以自己增加可输入值ITPUB个人空间$l FX5]&Bx&I ~ J*~]
var i;ITPUB个人空间%z%B w F3VJ9t
var c;ITPUB个人空间3l*];xp(k7|
if(String.charAt( 0 )=='-')ITPUB个人空间cJP7D |a ft
return false;ITPUB个人空间.v:bS TK.} t
if( String.charAt( String.length - 1 ) == '-' )
-^!['m7?M[9k'Nty:]22328375return false;ITPUB个人空间|D7S5K$F)F!C/A
for( i = 0; i < String.length; i ++ )ITPUB个人空间@kI.M6ya
{
#aj(O4I+ih%P k22328375c = String.charAt( i );ITPUB个人空间r0HEaQ"z3a
if (Letters.indexOf( c ) < 0)ITPUB个人空间%g~O$],s.K
return false;ITPUB个人空间+sC-SQRi0S#[
}ITPUB个人空间}NG(x0L%WDE,L
return true;
e[U,gW22328375}
P X)[$AFN1k22328375function CheckForm()
u}2L,F8N/w\U22328375{ITPUB个人空间4i {4mv*Kk
if(! isNumber(document.form.TEL.value)) {
9S xX8V W$a8S-xU22328375alert("您的电话号码不合法!");
F4rN+X}'?:s22328375document.form.TEL.focus();
,r-eo;^~w22328375return false;
,}5j&?-b c.g22328375}ITPUB个人空间4^1D S9Cp
return true;
#? m ?t mHq8~^22328375}
yA(JV-oy{22328375-->ITPUB个人空间%^g'h'pq,x

c4LP%du2MD22328375
G+I2B x1s\3H(M G22328375ITPUB个人空间+|9o6|1WY { U
2.4 表单项输入数值/长度限定
XCU7] l{ m22328375
'Fd&|2H0?)o22328375ITPUB个人空间!p.ARX/G+QZ+Ct)V
<!--
fAS;_$T%h22328375function CheckForm()ITPUB个人空间S(d${u7|e2^
{ITPUB个人空间Qe9[8{,Vl7c
if (document.form.count.value > 100 || document.form.count.value < 1)
xU8h!UZm22328375{
@&X"F1OIVdC22328375alert("输入数值不能小于零大于100!");ITPUB个人空间8rW Q.fFB4_s
document.form.count.focus();
6L'w+p6z"w k{q22328375return false;ITPUB个人空间 \$F`lQPqx4m+lW
}
3G$H!s1_%mk@z22328375if (document.form.MESSAGE.value.length<10)
["{B'eD6\;X7t/nD22328375{
(PLX5kv22328375alert("输入文字小于10!");ITPUB个人空间6X*u1j;}8BX
document.form.MESSAGE.focus();ITPUB个人空间HQ6bC0N
return false;
9Rnd hX3F22328375}
{ cW]-x!z` F22328375return true;ITPUB个人空间Uvi)k t Q o
}ITPUB个人空间 xW)~cc0xHpI
//-->
m|)u$HW3YRf22328375
NBx!|L22328375ITPUB个人空间|Pd,l;V {%R9e"a
2.5 中文/英文/数字/邮件地址合法性判断ITPUB个人空间-y};q-[A]@8kY
ITPUB个人空间F8K"s5m_.LRb

2tto}9Z0E K;L22328375<!--
yw2y%S8D(W6\J2x22328375ITPUB个人空间&FBU1u p*K#|v
function isEnglish(name) //英文值检测
9J\\? g22328375{
)?-h x%V^A22328375if(name.length == 0)
faN E.o'wdiGs1t22328375return false;ITPUB个人空间{2Pf F%SS
for(i = 0; i < name.length; i++) {
6WYT[!nUO zI22328375if(name.charCodeAt(i) > 128)ITPUB个人空间/x!H?~7D/k,\
return false;
(u*d6|:aFL"r4o s22328375}
o$t!J9Y'MR22328375return true;
X E1{rE22328375}
Nv B],A,gc E22328375ITPUB个人空间c)T5q.t6Q
function isChinese(name) //中文值检测ITPUB个人空间2O]i*iG
{
^zC Vt+Lu"i22328375if(name.length == 0)ITPUB个人空间 p }}xx
return false;ITPUB个人空间5h |3z6uB#C eR"j8a
for(i = 0; i < name.length; i++) {
*v%mW'~"q8v2kc[22328375if(name.charCodeAt(i) > 128)ITPUB个人空间A)Gye-c:iu_
return true;
7t!kt5i8hFL!j22328375}ITPUB个人空间b9?Y3GO0\4h`
return false;
K*w HN+x\x7PZ-f22328375}
YH7qUTz-P22328375ITPUB个人空间bD#B\IJ7l0J
function isMail(name) // E-mail值检测ITPUB个人空间;LXN,u3?m
{ITPUB个人空间v9jk r'R#|I
if(! isEnglish(name))ITPUB个人空间[Y%A U+VH0dv#c
return false;
3|kN$e5q22328375i = name.indexOf("@");
@%b w"b2ghIk&U QU22328375j = name.lastIndexOf("@");ITPUB个人空间j+Y l AP"W1~$m I0V
if(i == -1)
,rT[\L22328375return false;
MU7Z;g3SBUP5Yn,@22328375if(i != j)ITPUB个人空间#IyWEG SH-ee
return false;ITPUB个人空间(@*u0z pD*bvXl:P aw
if(i == name.length)
|.~2O I6`-f-e-W2a22328375return false;ITPUB个人空间 r ~@`*wT[GJW
return true;
1p[9v;P|a)]d22328375}ITPUB个人空间S3p4P)F zC-N7}7iV

(?rR\W s _ n22328375function isNumber(name) //数值检测ITPUB个人空间i*l+N+BH#Z.fdB
{ITPUB个人空间:\3DBr+d#ZS M&m
if(name.length == 0)ITPUB个人空间"f2nA nL^$e
return false;
;v r mc u1Y|22328375for(i = 0; i < name.length; i++) {ITPUB个人空间 F3d0|VtQ
if(name.charAt(i) < "0" || name.charAt(i) > "9")
mv%I{f:_Lz22328375return false;
/@Cg/z:[1]0L|Q|z22328375}ITPUB个人空间n aE/~8eD:e
return true;ITPUB个人空间#T_?C)dn&v,SM&[
}
Jil'n \m5x22328375ITPUB个人空间Wi_?\
function CheckForm()ITPUB个人空间O rC y X$AOX']+J
{
8?l(o2^&HmN @22328375if(! isMail(form.Email.value)) {ITPUB个人空间(G}"|5dwNT
alert("您的电子邮件不合法!");
!yl!R7?+x5U&ku9slt22328375form.Email.focus();
z6ty)vv i_22328375return false;
,|\2RM0^_22328375}
8Ih L~gH"G {22328375if(! isEnglish(form.name.value)) {
2yM'D*Q'T!J'A,t:~22328375alert("英文名不合法!");ITPUB个人空间~!^h{ RV
form.name.focus();
6I7jyC X22328375return false;
UE;S"LssW |8k22328375}ITPUB个人空间 cvas1C3X vU(E5A
if(! isChinese(form.cnname.value)) {ITPUB个人空间+k?'QW,h C)I
alert("中文名不合法!");
v2V8S;W4Ju22328375form.cnname.focus();
9G UmX"ga0CM22328375return false;
/@+s B*]N7T)z/t*Y22328375}
.n1kO*l D:m2K0I22328375if(! isNumber(form.PublicZipCode.value)) {ITPUB个人空间OKS D K,jH
alert("邮政编码不合法!");ITPUB个人空间:mx2j6l&O?$c[v({:y4X*YU
form.PublicZipCode.focus();
^]UN9w x#F22328375return false;
L0fm5kOO}2U7S22328375}ITPUB个人空间%C'N7}c}zs6_f9FzE
return true;
(et p}H}7u22328375}
ZBO_#a22328375//-->
%L8su}3o C%O `-f22328375
3D1nNT$q)j:` y(}22328375
!Dv;X8T-}F5Gc223283752.6 限定表单项不能输入的字符
9Wr6h#a9H aF~22328375ITPUB个人空间 J8sr7K}$gR

1A|;]+|gn!C8Z22328375<!--ITPUB个人空间'q*a6J_7?

5eg:y6V'YZN| `"j22328375function contain(str,charset)// 字符串包含
测试函数ITPUB个人空间}/X5Qi-rJp3D+p8@z
{
4Ex6zl(L22328375var i;
X5do`3u!}%p @^(n22328375for(i=0;i|[1@3g;J_x$aa22328375if(str.indexOf(charset.charAt(i))>=0)ITPUB个人空间Sh.GC'TBB
return true;
G;pxD4j8R}+h22328375return false;ITPUB个人空间 d-]-tV*wQUpJ
}
(['dg5ni!e22328375ITPUB个人空间/?8k8E&kT fs3jEv1C
function CheckForm()ITPUB个人空间Ala,s,B3{P
{ITPUB个人空间!HeX:azj4C
if ((contain(document.form.NAME.value, "%\(\)><")) || (contain(document.form.MESSAGE.value, "%\(\)><")))
$F(t p9jY&v22328375{ITPUB个人空间~aq7\#}N Y4MN
alert("输入了非法字符");
7\4Tpzb3D.PC22328375document.form.NAME.focus();ITPUB个人空间2D%s!HS'ZN8s` `
return false;ITPUB个人空间 e%Pl;z7@h@$q4fu
}ITPUB个人空间 kbn.zgg#v/N;c
return true;
8GH a)|0Ld4h22328375}ITPUB个人空间 ewCe&xa
//-->
K-g cZp S;_;D22328375

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22328375/viewspace-612371/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-08-12

  • 博文量
    14
  • 访问量
    15207