- (function() {
- var doc = document,
- ua = navigator.userAgent.toLowerCase(),
- check = function(r) {
- return r.test(ua);
- },
- isOpera = check(/opera/),
- isChrome = check(/chrome/),
- isWebKit = check(/webkit/),
- isSafari = !isChrome && check(/safari/),
- isSafari2 = isSafari && check(/applewebkit\/4/),
- isSafari3 = isSafari && check(/version\/3/),
- isSafari4 = isSafari && check(/version\/4/),
- isIE = !isOpera && check(/msie/),
- isIE7 = isIE && check(/msie 7/),
- isIE8 = isIE && check(/msie 8/),
- isIE9 = isIE && check(/msie 9/),
- isIE10 = isIE && check(/msie 10/),
- isIE11 = isIE && check(/msie 11/),
- isIE6 = isIE && !isIE7 && !isIE8 && !isIE9 && !isIE10 && !isIE11,
- isGecko = !isWebKit && check(/gecko/),
- isGecko2 = isGecko && check(/rv:1\.8/),
- isGecko3 = isGecko && check(/rv:1\.9/);
- function preventKey(e) {
- var ev = e || window.event,
- //获取event对象 obj = ev.target || ev.srcElement,//获取事件源 t = obj.type || obj.getAttribute('type'),readonly = obj.readOnly||obj.getAttribute('readonly'), code = ev.keyCode||ev.which||ev.charCode,charcode = String.fromCharCode(code).toLowerCase();//获取事件源控件类型,控件只读属性,键盘值 if ( (code == 8 && t != "password" && t != "text" && t != "textarea")||(readonly&&(t == "password" || t == "text" || t == "textarea"))) {//除不只读输入框外禁止后退键 return false; } if (((isOpera || isGecko)?ev.which==0:true)&&(code == 116 || code == 122|| code == 123 || (ev.shiftKey && code == 121))||(((isOpera || isGecko)?ev.which!=0:true)&&ev.ctrlKey && (charcode == 'a' || charcode == 's'))) {//屏蔽 F5,F11,F12,shift+F10,ctrl+a,ctrl+s if (isIE) ev.keyCode = 0; ev.returnValue = false; return false; } }; if (isOpera || isGecko) doc.onkeypress = preventKey; else if (isIE || isChrome || isSafari) doc.onkeydown = preventKey; if(isIE)document.onselectstart=function(){return false;}; doc.oncontextmenu = function(){ if(window.event){ window.event.cancelBubble = true; window.event.returnValue=false; } return false; }; try{window.history.forward(1);}catch(e){} })();