浏览器Hack演示

<!doctype html>

<html>

<head>

<title></title>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />

<meta name="description" content="" />

<meta name="keywords" content="" />

<base target="_blank" />

<link type="text/css" href="css/reset.css"  rel="stylesheet"/>

<link type="text/css" href="css/layout.css"  rel="stylesheet"/>

<script type="text/javascript" src='js/jquery-1.8.0.min.js'></script>

<!--[if lte IE 6]> 

<script type="text/javascript" src="js/DD_belatedPNG_0.0.8a.js"></script>

<script type="text/javascript">

DD_belatedPNG.fix('.fixpng,.bg_wrapper');

</script>

<![endif]-->





<style type="text/css">

body{ color:#000; }

@charset "gb2312";



/*样式重置*/

html,body,div,span,h1,h2,h3,h4,h5,h6,a,p,hr,dl,dt,dd,ol,ul,li,strong,em,img,input,menu,abbr,blockquote,q,cite,del,ins,address,dfn,kbd,samp,form,label,legend,fieldset,iframe,object,button,sub,sup,pre,code,var,bdo,

table,thead,tfoot,tbody,tr,th,td{margin:0;padding:0;border:0;outline:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:inherit;vertical-align: baseline;}

html\:abbr,abbr{background: #fafad2;cursor: help;border-bottom: 1px dashed #000;}

body{font:12px/160% verdana,geneva,arial,helvetica,SimSun;text-align: center; background: #fff;-webkit-text-size-adjust:none;}li{list-style:none;}

a:link,a:visited{text-decoration:none; }a:hover{text-decoration: none;_text-decoration: underline; }

hr{margin: 3px 0 2px 0;border-top:1px solid silver; height: 1px; clear: both;}@-moz-document url-prefix(){hr{ margin:3px 0;}}

table{border-collapse:separate;border-spacing:0;}



/*浏览器色块标示*/

.test{ height:30px; background:#eee;border-bottom:#cacaca 1px solid;line-height: 20px; padding-top:10px; }

.test span{ display:inline-block; height:20px; width:20px; padding:0 6px;margin-right: 8px;}

.ie6{ background: #1e90ff; }

.ie7{ background: orange; }

.ie8{ background: #ba55d3; }

.ie9{ background: #ff1493; }

.ie10{ background: #ff4500; }

.Gecko{ background: #228b22; }

.WebKit{ background: #20b2aa; }





/*hack样式*/

.hacks{ font-size: 14px;line-height: 50px;margin-top: 10px;

background: #ba55d3\0;          /* IE 8 */

+background: orange;            /* IE 7 */

_background: #1e90ff;           /* IE 6 */

}

:root .hacks{ background: #ff1493\9\0;       /* IE 9 */ }

@-moz-document url-prefix() {.hacks {background:#228b22;/* Gecko内核 */}}

@media screen and (-webkit-min-device-pixel-ratio:0) {.hacks{background:#20b2aa;/* WebKit内核 */}}

@media screen and (-ms-high-contrast: active),(-ms-high-contrast: none) {.hacks{background:#ff4500 !important;/* IE 10+ */}}

</style>

</head>



<body>

<div class="test">

IE6<span class="ie6"></span>

IE7<span class="ie7"></span>

IE8<span class="ie8"></span>

IE9<span class="ie9"></span>

IE10<span class="ie10"></span>

Gecko内核<span class="Gecko"></span>

WebKit内核<span class="WebKit"></span>

</div>

<br>

注:firefox是Gecko内核;<br>

google chrome和safari是WebKit内核;<br>

opera也转用WebKit内核了,新版本用没用不清楚。





<div class="hacks">我的背景色是效果</div>

<br>

<br>

<br>

<p>以下是浏览器和flash插件版本信息</p>

<br>

<br>



<script type="text/javascript" charset="utf-8">



/*

浏览器和flashplay检查

*/

(function() {    

    var CKobject= {

        _K_:function(d){return document.getElementById(d);},

        getVideo:function(s){

            var v='';

            if(s){

                for(var k in s){

                    v+='<source src="'+k+'"';

                    if(s[k]){

                        v+=' type="'+s[k]+'"';

                    }

                    v+='>';

                }

            }

            return v;

        },

        getVars:function(v,k){

            if(v[k]){

                return v[k];

            }

        },

        getParams:function(v){

            var p='';

            if(v){

                if(this.getVars(v,'p')==1 && this.getVars(v,'m')!=1){

                    p+=' autoplay="autoplay"'

                }

                if(this.getVars(v,'e')==1){

                    p+=' loop="loop"'

                }

                if(this.getVars(v,'m')==1){

                    p+=' preload="meta"'

                }

                if(this.getVars(v,'i')){

                    p+=' poster="'+this.getVars(v,'i')+'"'

                }

            }

            return p;

        },

        browser:function(){

            var m = (function(ua){

                var a=new Object();

                var b = {

                    msie: /msie/.test(ua) && !/opera/.test(ua),

                    opera: /opera/.test(ua),

                    safari: /webkit/.test(ua) && !/chrome/.test(ua),

                    firefox: /firefox/.test(ua),

                    chrome: /chrome/.test(ua)

                };

                var vMark = "";

                for (var i in b) {

                    if (b[i]) { vMark = "safari" == i ? "version" : i; break; }

                }

                b.version = vMark && RegExp("(?:" + vMark + ")[\\/: ]([\\d.]+)").test(ua) ? RegExp.$1 : "0";

                b.ie = b.msie;

                b.ie6 = b.msie && parseInt(b.version, 10) == 6;

                b.ie7 = b.msie && parseInt(b.version, 10) == 7;

                b.ie8 = b.msie && parseInt(b.version, 10) == 8;

                a.B=vMark;

                a.V=b.version;

                return a;

            })(window.navigator.userAgent.toLowerCase());

            return m;

        },

        Platform:function(){

            var w=''; 

            var u = navigator.userAgent, app = navigator.appVersion;              

            var b={                  

                iPhone: u.indexOf('iPhone') > -1 || u.indexOf('Mac') > -1,

                iPad: u.indexOf('iPad') > -1,

                ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/),

                android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1,

                webKit: u.indexOf('AppleWebKit') > -1,

                gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1,

                presto: u.indexOf('Presto') > -1,

                trident: u.indexOf('Trident') > -1,       

                mobile: !!u.match(/AppleWebKit.*Mobile.*/)||!!u.match(/AppleWebKit/),

                webApp: u.indexOf('Safari') == -1

            }; 

            for (var k in b){

                if(b[k]){

                    w=k;

                    break;

                }

            }

            return w;

        },

        Flash:function(){

            var f=false,v=0;

            if(document.all){

                try { 

                    var s=new ActiveXObject("ShockwaveFlash.ShockwaveFlash"); 

                    f=true;

                    var vs=s.GetVariable("$version");

                    v=parseInt(vs.split(" ")[1].split(",")[0]);

                } 

                catch(e){} 

            }

            else{

                if (navigator.plugins && navigator.plugins.length > 0){

                    var s=navigator.plugins["Shockwave Flash"];

                    if (s){

                        f=true;

                        var w = s.description.split(" ");

                        for (var i = 0; i < w.length; ++i){

                            if (isNaN(parseInt(w[i]))) continue;

                                v = parseInt(w[i]);

                            }

                        }

                }

            }

            return {f:f,v:v};

        },

        embedHTML5:function(C,P,W,H,V,A,S){

            var v='',

            b=this.browser()['B'],

            v=this.browser()['V'],

            x=v.split('.'),

            t=x[0],

            m=b+v,

            n=b+t,

            w='',

            s=false,

            f=this.Flash()['f'],

            a=false;

            if(!S){

                S=['iPad','iPhone','ios'];

            }

            for(var i=0;i<S.length;i++){

                w=S[i];

                if (w.indexOf('+')>-1){

                    w=w.split('+')[0];

                    a=true;

                }

                else{

                    a=false;

                }

                if(this.Platform()==w|| m==w || n==w || b==w){

                    if(a){

                        if(!f){

                            s=true;

                            break;

                        }

                    }

                    else{

                        s=true;

                        break;

                    }

                }

            }

            if(s){

                v='<video controls id="'+P+'" width="'+W+'" height="'+H+'"'+this.getParams(A)+'>'+this.getVideo(V)+'</video>';

                this._K_(C).innerHTML=v;

                this._K_(C).style.width=W+'px';

                this._K_(C).style.height=H+'px';

                this._K_(C).style.backgroundColor='#000';

            }

        },

        getflashvars:function(s){

            var v='',i=0;

            if(s){

                for(var k in s){

                    if(i>0){

                        v+='&';

                    }

                    v+=k+'='+s[k];

                    i++;

                }

            }

            return v;

        },

        getparam:function(s){

            var w='',v='',

            o={

                allowScriptAccess:'always',

                allowFullScreen:true,

                quality:'high',

                bgcolor:'#000'

            };

            if(s){

                for(var k in s){

                    o[k]=s[k];

                }

            }

            for(var e in o){

                w+=e+'="'+o[e]+'" ';

                v+='<param name="'+e+'" value="'+o[e]+'" />';

            }

            w=w.replace('movie=','src=');

            return {w:w,v:v};

        },

        getObjectById:function (s){

            var X = null,

            Y = this._K_(s),

            r = "embed";

            if (Y && Y.nodeName == "OBJECT") {

                if (typeof Y.SetVariable != 'undefined') {

                    X = Y;

                } else {

                    var Z = Y.getElementsByTagName(r)[0];

                    if (Z) {

                        X = Z;

                    }

                }

            }

            return X;

        },

        embedSWF:function(C,D,N,W,H,V,P){

            if(!N){N='ckplayer_a1'}

            if(!P){P={};}

            var u='undefined',

            j=document,

            r='http://www.macromedia.com/go/getflashplayer',

            t='<a href="'+r+'" target="_blank">请点击此处下载安装最新的flash插件</a>',

            error={

                w:'您的网页不符合w3c标准,无法显示播放器',

                f:'您没有安装flash插件,无法播放视频,'+t,

                v:'您的flash插件版本过低,无法播放视频,'+t

            },

            w3c=typeof j.getElementById != u && typeof j.getElementsByTagName != u && typeof j.createElement != u,

            i='id="'+N+'" name="'+N+'" ',

            s='',

            l='';

            P['movie']=C;

            P['flashvars']=this.getflashvars(V);

            s+='<object  pluginspage="http://www.macromedia.com/go/getflashplayer" ';

            s+='classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" ';

            s+='codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=10,0,0,0" ';

            s+='width="'+W+'" ';

            s+='height="'+H+'" ';

            s+=i;

            s+='align="middle">';

            s+=this.getparam(P)['v'];

            s+='<embed ';

            s+=this.getparam(P)['w'];

            s+=' width="'+W+'" height="'+H+'" name="'+N+'" id="'+N+'" align="middle" '+i;

            s+='type="application/x-shockwave-flash" pluginspage="'+r+'" />';

            s+='</object>';

            if(!w3c){

                l=error['w'];

            }

            else{

                if(!this.Flash()['f']){

                    l=error['f'];

                }

                else{

                    if(this.Flash()['v']<10){

                        l=error['f'];

                    }

                    else{

                        l=s;

                    }

                }

            }

            if(l){

                this._K_(D).innerHTML=l;

            }

        }

    }

    window.CKobject = CKobject;

})();





</script>

<p id="aboutme"></p>

<script type="text/javascript">

var aboutme='';

aboutme+='平台(浏览器)内核:'+CKobject.Platform()+'<br />';

aboutme+='浏览器:'+CKobject.browser()['B']+'<br />';

aboutme+='浏览器版本:'+CKobject.browser()['V']+'<br />';

aboutme+='是否安装了flash插件:'+CKobject.Flash()['f']+'<br />';

if(CKobject.Flash()['f']){

    aboutme+='flash插件版本:'+CKobject.Flash()['v']+'<br />';

}

CKobject._K_('aboutme').innerHTML=aboutme;

</script>

</body>

</html>

 

你可能感兴趣的:(hack)