JavaScript 浏览器验证代码(来自discuz)


Posted in Javascript onJuly 17, 2010

在看 Discuz! 的源码的时候,发现了一段浏览器验证的代码,还是比较经典的:

var BROWSER = {}; 
var USERAGENT = navigator.userAgent.toLowerCase(); 
alert(USERAGENT); 
BROWSER.ie = window.ActiveXObject && USERAGENT.indexOf('msie') != -1 && USERAGENT.substr(USERAGENT.indexOf('msie') + 5, 3); 
BROWSER.firefox = document.getBoxObjectFor && USERAGENT.indexOf('firefox') != -1 && USERAGENT.substr(USERAGENT.indexOf('firefox') + 8, 3); 
BROWSER.chrome = window.MessageEvent && !document.getBoxObjectFor && USERAGENT.indexOf('chrome') != -1 && USERAGENT.substr(USERAGENT.indexOf('chrome') + 7, 10); 
BROWSER.opera = window.opera && opera.version(); 
BROWSER.safari = window.openDatabase && USERAGENT.indexOf('safari') != -1 && USERAGENT.substr(USERAGENT.indexOf('safari') + 7, 8); 
BROWSER.other = !BROWSER.ie && !BROWSER.firefox && !BROWSER.chrome && !BROWSER.opera && !BROWSER.safari; 
BROWSER.firefox = BROWSER.chrome ? 1 : BROWSER.firefox;
Javascript 相关文章推荐
初学JavaScript第二章
Sep 30 Javascript
JavaScript实现移动端滑动选择日期功能
Jun 21 Javascript
利用Node.JS实现邮件发送功能
Oct 21 Javascript
jQuery 遍历map()方法详解
Nov 04 Javascript
实例解析Array和String方法
Dec 14 Javascript
Bootstrap CSS布局之表格
Dec 17 Javascript
BootStrap Table后台分页时前台删除最后一页所有数据refresh刷新后无数据问题
Dec 28 Javascript
vue项目中用cdn优化的方法
Jan 03 Javascript
微信小程序功能之全屏滚动效果的实现代码
Nov 22 Javascript
vue点击自增和求和的实例代码
Nov 06 Javascript
JQuery事件冒泡和默认行为代码实例
May 13 jQuery
解决vue+webpack项目接口跨域出现的问题
Aug 10 Javascript
IE6,IE7下js动态加载图片不显示错误
Jul 17 #Javascript
js模拟类继承小例子
Jul 17 #Javascript
javascript 循环读取JSON数据的代码
Jul 17 #Javascript
一个可绑定数据源的jQuery数据表格插件
Jul 17 #Javascript
js跨域问题之跨域iframe自适应大小实现代码
Jul 17 #Javascript
javascript下对于事件、事件流、事件触发的顺序随便说说
Jul 17 #Javascript
jQuery Select(单选) 模拟插件 V1.3.62 改进版
Jul 17 #Javascript
You might like
PHP实现C#山寨ArrayList的方法
2015/07/16 PHP
php实现背景图上添加圆形logo图标的方法
2016/11/17 PHP
laravel项目利用twemproxy部署redis集群的完整步骤
2018/05/11 PHP
javascript中"/"运算符常见错误
2010/10/13 Javascript
js实现window.open不被拦截的解决方法汇总
2014/10/30 Javascript
JavaScript中的对象序列化介绍
2014/12/30 Javascript
深入理解JavaScript系列(34):设计模式之命令模式详解
2015/03/03 Javascript
jQuery实现平滑滚动到指定锚点的方法
2015/03/20 Javascript
jQuery Mobile框架中的表单组件基础使用教程
2016/05/17 Javascript
JS组件Bootstrap Select2使用方法解析
2016/05/30 Javascript
JS中静态页面实现微信分享功能
2017/02/06 Javascript
JavaScript实现按键精灵的原理分析
2017/02/21 Javascript
js中DOM三级列表(代码分享)
2017/03/20 Javascript
React Native中NavigatorIOS组件的简单使用详解
2018/01/27 Javascript
JavaScript数组去重的方法总结【12种方法,号称史上最全】
2019/02/28 Javascript
Vue组件化开发之通用型弹出框的实现
2020/02/28 Javascript
python中threading超线程用法实例分析
2015/05/16 Python
Python中max函数用法实例分析
2015/07/17 Python
Python中Collections模块的Counter容器类使用教程
2016/05/31 Python
浅谈python中scipy.misc.logsumexp函数的运用场景
2016/06/23 Python
python批量实现Word文件转换为PDF文件
2018/03/15 Python
详解python中TCP协议中的粘包问题
2019/03/22 Python
Python多线程爬取豆瓣影评API接口
2019/10/22 Python
python3用urllib抓取贴吧邮箱和QQ实例
2020/03/10 Python
关于多种方式完美解决Python pip命令下载第三方库的问题
2020/12/21 Python
CSS3实现淘宝留白的方法
2020/06/05 HTML / CSS
戴尔英国官网:Dell英国
2017/05/27 全球购物
实习老师个人总结的自我评价
2013/09/28 职场文书
护士思想汇报
2014/01/12 职场文书
小学科学教学反思
2014/01/26 职场文书
幼儿园端午节活动方案
2014/08/25 职场文书
迎七一演讲稿
2014/09/12 职场文书
委托代理人授权委托书范本
2014/09/24 职场文书
装配车间主任岗位职责
2015/04/08 职场文书
2015年秋季校长开学典礼致辞
2015/07/29 职场文书
centos8安装MongoDB的详细过程
2021/10/24 MongoDB