首页 | 心情日记 | 建站心得 | 编程技术 | 大盘分析 | 股市信息 | 学习园地 | 电脑技巧 | 物流外贸 | 另类其它 | 站长推荐 | 给我留言 | 相册

用户登陆
用户:
密码:
 
不保存保存一天
保存一月保存一年

站点日历
73 2024 - 3 48
     12
3456789
10111213141516
17181920212223
24252627282930
31


站点统计

最新评论

日志搜索

 标题   内容


标准MD5加密程序 ASP防XSS注入函数
未知 如何用js检测浏览器类型   [ 日期:2010-10-01 11:51:37 ]   [ 来自:本站原创 ]

海外邮件中继,海外退信中继,美国高速VPS,不限流量VPN,邮局维护和管理,邮件网关,EMOS邮件中继,POSTFIX邮件中继,Winwebmail邮件中继,Winmail邮件中继,DBMail邮件中继,JDMail邮件中继,Exchange邮件中继,MDaemon邮件中继 淘宝店:http://shantan.taobao.com 云邮科技官网:www.yunrelay.com

【字体设置:
普通JavaScript获取浏览器基本信息:

<html>

<body>
<script type="text/javascript">
var browser=navigator.appName
var b_version=navigator.appVersion
var version=parseFloat(b_version)

document.write("Browser name: "+ browser)
document.write("<br />")
document.write("Browser version: "+ version)
</script>
</body>

</html>

 

IE 

只有IE支持创建ActiveX控件,因此她有一个其他浏览器没有的东西,就是ActiveXObject函数。只要判断window对象存在ActiveXObject函数,就可以明确判断出当前浏览器是IE。而IE各个版本典型的userAgent如下: 

Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0) 

Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2) 

Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) 

Mozilla/4.0 (compatible; MSIE 5.0; Windows NT) 

其中,版本号是MSIE之后的数字。 

Firefox 

Firefox中的DOM元素都有一个getBoxObjectFor函数,用来获取该DOM元素的位置和大小(IE对应的中是 getBoundingClientRect函数)。这是Firefox独有的,判断它即可知道是当前浏览器是Firefox。Firefox几个版本的 userAgent大致如下: 

Mozilla/5.0 (Windows; U; Windows NT 5.2) Gecko/2008070208 Firefox/3.0.1 

Mozilla/5.0 (Windows; U; Windows NT 5.1) Gecko/20070309 Firefox/2.0.0.3 

Mozilla/5.0 (Windows; U; Windows NT 5.1) Gecko/20070803 Firefox/1.5.0.12 

其中,版本号是Firefox之后的数字。 

Opera 

Opera提供了专门的浏览器标志,就是window.opera属性。Opera典型的userAgent如下: 

Opera/9.27 (Windows NT 5.2; U; zh-cn) 

Opera/8.0 (Macintosh; PPC Mac OS X; U; en) 

Mozilla/5.0 (Macintosh; PPC Mac OS X; U; en) Opera 8.0 

其中,版本号是靠近Opera的数字。 

Safari 

Safari浏览器中有一个其他浏览器没有的openDatabase函数,可做为判断Safari的标志。Safari典型的userAgent如下: 

Mozilla/5.0 (Windows; U; Windows NT 5.2) AppleWebKit/525.13 (KHTML, like Gecko) Version/3.1 Safari/525.13 

Mozilla/5.0 (iPhone; U; CPU like Mac OS X) AppleWebKit/420.1 (KHTML, like Gecko) Version/3.0 Mobile/4A93 Safari/419.3 

其版本号是Version之后的数字。 

Chrome 

Chrome有一个MessageEvent函数,但Firefox也有。不过,好在Chrome并没有Firefox的getBoxObjectFor函数,根据这个条件还是可以准确判断出Chrome浏览器的。目前,Chrome的userAgent是: 

Mozilla/5.0 (Windows; U; Windows NT 5.2) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.2.149.27 Safari/525.13 

其中,版本号在Chrome只后的数字。 

有趣的是,Chrome的userAgent还包含了Safari的特征,也许这就是Chrome可以运行所有Apple浏览器应用的基础吧。 

只要了解了以上信息,我们就可以根基这些特征来判断浏览器类型及其版本了。我们会将判断的结果保存在Sys名字空间中,成为前端框架的基本标志信息,供今后的程序来读取。如果判断出谋种浏览器,Sys名字空间将有一个该浏览器名称的属性,其值为该浏览器的版本号。例如,如果判断出IE 7.0,则Sys.ie的值为7.0;如果判断出Firefox 3.0,则Sys.firefox的值为3.0。下面是判断浏览器的代码: 
 
<script type= "text/javascript" >   
        var  Sys = {};   
        var  ua = navigator.userAgent.toLowerCase();   
        if  (window.ActiveXObject)   
            Sys.ie = ua.match(/msie ([\d.]+)/)[1]   
        else   if  (document.getBoxObjectFor)   
            Sys.firefox = ua.match(/firefox\/([\d.]+)/)[1]   
        else   if  (window.MessageEvent && !document.getBoxObjectFor)   
            Sys.chrome = ua.match(/chrome\/([\d.]+)/)[1]   
        else   if  (window.opera)   
            Sys.opera = ua.match(/opera.([\d.]+)/)[1]   
        else   if  (window.openDatabase)   
            Sys.safari = ua.match(/version\/([\d.]+)/)[1];   
           
        //以下进行测试            if (Sys.ie) document.write( 'IE: ' +Sys.ie);   
        if (Sys.firefox) document.write( 'Firefox: ' +Sys.firefox);   
        if (Sys.chrome) document.write( 'Chrome: ' +Sys.chrome);   
        if (Sys.opera) document.write( 'Opera: ' +Sys.opera);   
        if (Sys.safari) document.write( 'Safari: ' +Sys.safari);   
    </script>   


引用这个评论 牛呀牛 于 2010-10-27 15:06:20 发表评论: 
同样不懂,一起看天书

引用这个评论 atx258 于 2010-10-07 21:08:33 发表评论: 
不懂,看天书!

   发表评论 - 不要忘了输入验证码哦!
作者: 用户:  密码:  我要注册 验证码: 
为防止广告注册机程序,验证码不会自动显示,请点击此处显示或者(刷新)验证码!
评论:

禁止表情
禁止UBB
禁止图片
识别链接
识别关键字
确定发布?
最多可以输入200个字,目前你已经输入了0个字;你今日还可以发表10条评论!
 
   

CopyRight © 2008-2010 广东金融学院030904班 All Rights Reserved
Powered by www.030904.com