js获取客户端操作系统
一个项目中碰到的问题,页面标题和导航的字体在macosx下没有,因为不同的字体,相同的font-size,显示的大小也不一样,所以导致macosx下错位。想到的解决办法就是通过js的navigator.platform获取客户端的操作系统,然对针对macosx单独加个class,以下这段代码是在网上找的,其实就是个类似系统的对照表。
JS:
- function detectOS() {
- var sUserAgent = navigator.userAgent;
- var isWin = (navigator.platform == "Win32") || (navigator.platform == "Windows");
- var isMac = (navigator.platform == "Mac68K") || (navigator.platform == "MacPPC") || (navigator.platform == "Macintosh") || (navigator.platform == "MacIntel");
- if (isMac) return "Mac";
- var isUnix = (navigator.platform == "X11") && !isWin && !isMac;
- if (isUnix) return "Unix";
- var isLinux = (String(navigator.platform).indexOf("Linux") > -1);
- if (isLinux) return "Linux";
- if (isWin) {
- var isWin2K = sUserAgent.indexOf("Windows NT 5.0") > -1 || sUserAgent.indexOf("Windows 2000") > -1;
- if (isWin2K) return "Win2000";
- var isWinXP = sUserAgent.indexOf("Windows NT 5.1") > -1 || sUserAgent.indexOf("Windows XP") > -1;
- if (isWinXP) return "WinXP";
- var isWin2003 = sUserAgent.indexOf("Windows NT 5.2") > -1 || sUserAgent.indexOf("Windows 2003") > -1;
- if (isWin2003) return "Win2003";
- var isWinVista= sUserAgent.indexOf("Windows NT 6.0") > -1 || sUserAgent.indexOf("Windows Vista") > -1;
- if (isWinVista) return "WinVista";
- var isWin7 = sUserAgent.indexOf("Windows NT 6.1") > -1 || sUserAgent.indexOf("Windows 7") > -1;
- if (isWin7) return "Win7";
- }
- return "other";
- }
- document.writeln("您的操作系统是:" + detectOS());
复制代码转:zjhsd2007
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论