关于web前端开发,区别用户使用的终端设备代码

2018-01-24 阅读 1353 收藏 6 原链:segmentfault.com
分享到:

前端必备图书《CSS 揭秘》 >> >> 

对web前端开发,熟知不同的浏览器,的解析是基本技能,下面,我就向大家展示一下,如何获得当前用户所用的终端设备。车子一发动,请准备上车。。。。。。。。。。。。。。。。。。。

<script>
        //判断客户端的设备
        currentLang = navigator.language; //判断除IE外其他浏览器使用语言
        if(!currentLang) { //判断IE浏览器使用语言
            currentLang = navigator.browserLanguage;
        }
        //判断访问终端
        var browser = {
            versions: function() {
                var u = navigator.userAgent,
                    app = navigator.appVersion;
                return {
                    trident: u.indexOf('Trident') > -1, //IE内核
                    presto: u.indexOf('Presto') > -1, //opera内核
                    webKit: u.indexOf('AppleWebKit') > -1, //苹果、谷歌内核
                    gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, //火狐内核
                    mobile: !!u.match(/AppleWebKit.*Mobile.*/), //是否为移动终端
                    ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios终端
                    android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, //android终端或者uc浏览器
                    iPhone: u.indexOf('iPhone') > -1, //是否为iPhone或者QQHD浏览器
                    iPad: u.indexOf('iPad') > -1, //是否iPad
                    webApp: u.indexOf('Safari') == -1 //是否web应该程序,没有头部与底部
                };
            }(),
            language: (navigator.browserLanguage || navigator.language).toLowerCase()
        }

        //browser.versions.trident返回真假,真则是IE内核,以此类推browser.versions.webKit是否为谷歌内核
        if(browser.versions.iPhone) {
            alert("我是苹果设备");
        }
        if (browser.versions.webKit) {
            alert("我是谷歌浏览器");
        }
        if (browser.versions.mobile) {
            alert("我是移动端");
        }else{
            alert("我是PC端");
        };
        if(browser.versions.trident){
            alert("我是IE浏览器");
        }
        if (browser.versions.presto) {
            alert("我是欧朋浏览器");
        }
        if (browser.versions.gecko) {
            alert("我是火狐浏览器");
        }
    </script>
回到顶部