1

一如前端深似海,学习学习再学习,这是我第一次遇到判断ios系统版本的问题

h5工作过程中一旦牵扯到判断设备的需求,那么自然而然就应该想到

window.navigator.userAgent();//也就是常说的UA,这个里面会把设备的信息打印出来

上面语句打印出的信息:
iPhone 4.3.2 系统:
Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_3_2 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8H7 Safari/6533.18.5
iPone 5.1 系统:
Mozilla/5.0 (iPhone; U; CPU iPhone OS 5_1 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8H7 Safari/6533.18.5
iPone 5.1.1 系统:
Mozilla/5.0 (iPhone; U; CPU iPhone OS 5_1_1 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8H7 Safari/6533.18.5


从打印信息中可以开出来这些规律,然后就可以用正则来匹配;

window.navigator.userAgent.match(/OS [9]_\d[_\d]* like Mac OS X/i)//返回检索的字符串,

大概思路是这样,重点说下整体的方法:

function gt_ios9() {
              // 判断是否 iPhone 或者 iPod
            if((navigator.userAgent.match(/iPhone/i) || navigator.userAgent.match(/iPod/i))) {
                // 判断系统版本号是否大于 4
                return Boolean(navigator.userAgent.match(/OS [9]_\d[_\d]* like Mac OS X/i));
            } else {
                return false;
            }
        }
gt_ios9();可以返回一个布尔值判断是否是你需要的系统

个人总结,如有不当之处,欢迎纠正


D一生
235 声望15 粉丝

一如前端深似海