123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133 |
- //sniffer v1
- //Based on Ultimate client-side JavaScript client sniff
- //(C) Netscape Communications 1999. Permission granted to reuse and distribute.
- // convert all characters to lowercase to simplify testing
- var agt = navigator.userAgent.toLowerCase();
- // *** BROWSER VERSION ***
- // Note: On IE5, these return 4, so use is.ie5up to detect IE5
- // or is.ie6up to detect IE6.
- is_major = parseInt(navigator.appVersion);
- is_minor = parseFloat(navigator.appVersion);
- // Note: Opera and WebTV spoof Navigator. We do strict client detection.
- // If you want to allow spoofing, take out the tests for opera and webtv.
- is_moz = ((agt.indexOf('mozilla') != -1) && (agt.indexOf('spoofer')==-1)
- && (agt.indexOf('compatible') == -1) && (agt.indexOf('opera')==-1)
- && (agt.indexOf('webtv')==-1) && (agt.indexOf('hotjava')==-1));
- is_moz2 = (is_moz && (is_major == 2));
- is_moz3 = (is_moz && (is_major == 3));
- is_moz4 = (is_moz && (is_major == 4));
- //is_moz4up = (is_moz && (is_major >= 4));
- //is_moz5 = (is_moz && (is_major == 5));
- //is_moz5up = (is_moz && (is_major >= 5));
- is_gecko = (agt.indexOf('gecko') != -1);
- is_firefox = (agt.indexOf('firefox') != -1);
- //is_firefox1 = (agt.indexOf('firefox/1.0') != -1);
- //is_firefox1up = (is_firefox && !is_firefox1);
- //is_firefox1_5 = (agt.indexOf('firefox/1.5') != -1);
- //is_firefox1_5up = (is_firefox1up && !is_firefox1_5);
- //is_firefox2 = (agt.indexOf('firefox/2.') != -1);
- //is_firefox2up = (is_firefox1_5up && !is_firefox2);
- //
- //is_seamonkey = (agt.indexOf('seamonkey') != -1);
- //is_seamonkey1 = (agt.indexOf('seamonkey/1') != -1);
- is_nav2 = is_moz2;
- is_nav3 = is_moz3;
- is_nav4 = is_moz4;
- is_nav4up = (is_nav4 || ((is_major >= 4) && (agt.indexOf("netscape") != -1)));
- is_nav = (is_nav2 || is_nav3 || is_nav4);
- //is_nav6 = (is_moz && (is_major == 5) && (agt.indexOf("netscape6/6") != -1));
- //is_nav6up = (is_moz && (is_major >= 5) && (agt.indexOf("netscape") != -1));
- //is_nav7 = (is_moz && (is_major == 5) && (agt.indexOf("netscape/7") != -1));
- //is_nav7up = (is_nav6up && !is_nav6);
- //is_nav8 = (is_moz && (is_major == 5) && (agt.indexOf("netscape/8") != -1));
- //is_nav8up = (is_nav7up && !is_nav7);
- //is_navonly = (is_nav && ((agt.indexOf(";nav") != -1) || (agt.indexOf("; nav") != -1)) );
-
- is_mozilla = (is_moz && is_gecko);
- is_mozilla1 = (is_moz && is_gecko && (agt.indexOf("rv:1") != -1));
- is_ie = ((agt.indexOf("msie") != -1) && (agt.indexOf("opera") == -1));
- //is_ie3 = (is_ie && (is_major < 4));
- //is_ie4 = (is_ie && (is_major == 4) && (agt.indexOf("msie 4") != -1) );
- //is_ie4up = (is_ie && (is_major >= 4));
- //is_ie5 = (is_ie && (is_major == 4) && (agt.indexOf("msie 5.0") != -1) );
- //is_ie5up = (is_ie4up && !is_ie4);
- //is_ie5_5 = (is_ie && (is_major == 4) && (agt.indexOf("msie 5.5") != -1));
- //is_ie5_5up = (is_ie5up && !is_ie5);
- is_ie6 = (is_ie && (is_major == 4) && (agt.indexOf("msie 6.") != -1) );
- //is_ie6up = (is_ie5_5up && !is_ie5_5);
- is_ie7 = (is_ie && (is_major == 4) && (agt.indexOf("msie 7.") != -1) );
- //is_ie7up = (is_ie6up && !is_ie6);
- is_ie8 = (is_ie && (is_major == 4) && (agt.indexOf("msie 8.") != -1) );
- is_ie9 = (is_ie && (is_major == 5) && (agt.indexOf("msie 9.") != -1) );
- //is_msn = (is_ie4up && (agt.indexOf("msn") != -1));
- //is_msn2_5 = (is_msn && (agt.indexOf("msn 2.5") != -1));
- //is_msn2_6 = (is_msn && (agt.indexOf("msn 2.6") != -1));
- //is_aol = (agt.indexOf("aol") != -1);
- //is_aol3 = (is_aol && is_ie3);
- //is_aol4ie3 = (is_aol && is_ie3);
- //is_aol4ie4 = (is_aol && is_ie4);
- //is_aol4 = (is_aol4ie3 || is_aol4ie4);
- //is_aol5 = (agt.indexOf("aol 5") != -1);
- //is_aol6 = (agt.indexOf("aol 6") != -1);
- //is_aol7 = ((agt.indexOf("aol 7") != -1) || agt.indexOf("aol/7") != -1);
- //is_aol8 = ((agt.indexOf("aol 8") != -1) || agt.indexOf("aol/8") != -1);
- //is_aol9 = ((agt.indexOf("aol 9") != -1) || agt.indexOf("aol/9") != -1);
- is_opera = (agt.indexOf("opera") != -1);
- //is_opera2 = (agt.indexOf("opera 2") != -1 || agt.indexOf("opera/2") != -1);
- //is_opera3 = (agt.indexOf("opera 3") != -1 || agt.indexOf("opera/3") != -1);
- //is_opera4 = (agt.indexOf("opera 4") != -1 || agt.indexOf("opera/4") != -1);
- //is_opera5 = (agt.indexOf("opera 5") != -1 || agt.indexOf("opera/5") != -1);
- //is_opera5up = (is_opera && !is_opera2 && !is_opera3 && !is_opera4);
- //is_opera6 = (agt.indexOf("opera 6") != -1 || agt.indexOf("opera/6") != -1);
- //is_opera6up = (is_opera5up && !is_opera5);
- //is_opera7 = (agt.indexOf("opera 7") != -1 || agt.indexOf("opera/7") != -1);
- //is_opera7up = (is_opera6up && !is_opera6);
- //is_opera8 = (agt.indexOf("opera 8.0") != -1 || agt.indexOf("opera/8.0") != -1);
- //is_opera8up = (is_opera7up && !is_opera7);
- //is_opera8_5 = (agt.indexOf("opera 8.5") != -1 || agt.indexOf("opera/8.5") != -1);
- //is_opera8_5up = (is_opera8up && !is_opera8);
- //is_opera9 = (agt.indexOf("opera 9") != -1 || agt.indexOf("opera/9") != -1);
- //is_opera9up = (is_opera8_5up && !is_opera8_5);
- //is_webtv = (agt.indexOf("webtv") != -1);
- //is_TVNavigator = ((agt.indexOf("navio") != -1) || (agt.indexOf("navio_aoltv") != -1));
- //is_AOLTV = is_TVNavigator;
- //is_hotjava = (agt.indexOf("hotjava") != -1);
- //is_hotjava3 = (is_hotjava && (is_major == 3));
- //is_hotjava3up = (is_hotjava && (is_major >= 3));
-
- //is_konqueror = (agt.indexOf("konqueror") != -1);
- is_safari = ((agt.indexOf('safari')!=-1) /*&& (agt.indexOf('mac')!=-1)*/);
- //is_khtml = (this.safari || this.konqueror);
- is_chrome = (agt.indexOf("chrome")!=-1) ? true:false;
- is_crOs = is_chrome && (agt.indexOf("csos")!=-1);
- is_chromeFrame = is_chrome && __chromeFrame;
- //webkit Based
- is_webkit = is_safari || is_chrome;
- // FOR TABLET PC
- is_ipad = (is_safari && (agt.indexOf('ipad')!=-1));
- // FOR SMART PHONE
- is_iphone = (is_safari && (agt.indexOf('iphone')!=-1));
- is_apple = (is_ipad || is_iphone);
- is_android = (agt.indexOf('android')!=-1);
- is_opera_mini = (agt.indexOf('opera mini')!=-1);
- is_smartphone = (is_webkit || is_iphone || is_android || is_opera_mini || is_ipad/* TODO... etc ... */);
|