天天看點

js源碼收集

js源碼收集

(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){} })();  

繼續閱讀