免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1971 | 回复: 0
打印 上一主题 下一主题

js获取客户端操作系统 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-03-04 13:30 |只看该作者 |倒序浏览
一个项目中碰到的问题,页面标题和导航的字体在macosx下没有,因为不同的字体,相同的font-size,显示的大小也不一样,所以导致macosx下错位。想到的解决办法就是通过js的navigator.platform获取客户端的操作系统,然对针对macosx单独加个class,以下这段代码是在网上找的,其实就是个类似系统的对照表。

JS:
  1. function detectOS() {  

  2.     var sUserAgent = navigator.userAgent;  

  3.     var isWin = (navigator.platform == "Win32") || (navigator.platform == "Windows");  

  4.     var isMac = (navigator.platform == "Mac68K") || (navigator.platform == "MacPPC") || (navigator.platform == "Macintosh") || (navigator.platform == "MacIntel");  

  5.     if (isMac) return "Mac";  

  6.     var isUnix = (navigator.platform == "X11") && !isWin && !isMac;  

  7.     if (isUnix) return "Unix";  

  8.     var isLinux = (String(navigator.platform).indexOf("Linux") > -1);  

  9.     if (isLinux) return "Linux";  

  10.     if (isWin) {  

  11.         var isWin2K = sUserAgent.indexOf("Windows NT 5.0") > -1 || sUserAgent.indexOf("Windows 2000") > -1;  

  12.         if (isWin2K) return "Win2000";  

  13.         var isWinXP = sUserAgent.indexOf("Windows NT 5.1") > -1 || sUserAgent.indexOf("Windows XP") > -1;  

  14.         if (isWinXP) return "WinXP";  

  15.         var isWin2003 = sUserAgent.indexOf("Windows NT 5.2") > -1 || sUserAgent.indexOf("Windows 2003") > -1;  

  16.         if (isWin2003) return "Win2003";  

  17.         var isWinVista= sUserAgent.indexOf("Windows NT 6.0") > -1 || sUserAgent.indexOf("Windows Vista") > -1;  

  18.         if (isWinVista) return "WinVista";  

  19.         var isWin7 = sUserAgent.indexOf("Windows NT 6.1") > -1 || sUserAgent.indexOf("Windows 7") > -1;  

  20.         if (isWin7) return "Win7";  

  21.     }  

  22.     return "other";  

  23. }  

  24.    

  25. document.writeln("您的操作系统是:" + detectOS());

复制代码
转:zjhsd2007
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP