js中判断浏览器版本

复制代码
    var ai = {
        ovb: {
            /**
             * 该对象用于判断系统,系统版本,浏览器,苹果设备等等功能。ovb是单词 Os Version Browser 的头字母缩写。
             */
            _version_value: false,
            _bversion_value: false,
            _ua: navigator.userAgent,
            android: function() {
                /**
                 * 该方法用于判断是否为安卓平台,如果是返回ture 否 返回 false
                 * @return ture或者false
                 */
                var regular_result = this._ua.match(/(Android)\s+([\d.]+)/),
                    os_boolean = !!regular_result;
                if(!this._version_value && os_boolean){
                    this._version_value = regular_result[2];
                }
                this.android = function(){return os_boolean;};
                return os_boolean;
            },
            ios: function() {
                /**
                 * 该方法用于判断是否为iOS平台,如果是返回ture 否 返回 false
                 * @return ture或者false
                 */
                var regular_result = this._ua.match(/.*OS\s([\d_]+)/),
                    os_boolean = !!regular_result;
                if(!this._version_value && os_boolean){
                    this._version_value = regular_result[1].replace(/_/g, '.');
                }
                this.ios = function(){return os_boolean;};
                return os_boolean;
            },
            iphone: function() {
                /**
                 * 该方法用于判断是否为iphone设备,如果是返回ture 否 返回 false
                 *  @return ture或者false
                 */
                var regular_result = this._ua.match(/(iPhone);.*OS\s([\d_]+)/),
                    os_boolean = !!regular_result;
                if(!this._version_value && os_boolean){
                    this._version_value = regular_result[2].replace(/_/g, '.');
                }
                this.iphone = function(){return os_boolean;};
                return os_boolean;
            },
            qq:    function() {
                var regular_result = this._ua.match(/QQ/i),
                    os_boolean = !!regular_result;
                this.weixin = function(){return os_boolean;};
                return os_boolean;
            },
            weixin: function() {
                /**
                 * 该方法用于判断是否为silk浏览器,如果是返回ture 否 返回 false
                 * @return ture或者false
                 */
                var regular_result = this._ua.match(/MicroMessenger/i),
                    os_boolean = !!regular_result;
                this.weixin = function(){return os_boolean;};
                return os_boolean;
            },
            erqalmedia: function() {
                /**
                 * 该方法用于判断是否为silk浏览器,如果是返回ture 否 返回 false
                 * @return ture或者false
                 */
                var regular_result = this._ua.match(/ErqalMedia/),
                    os_boolean = !!regular_result;
                this.silk = function(){return os_boolean;};
                return os_boolean;
            }
        }

    }
复制代码

 

posted @   joshua317  阅读(277)  评论(0编辑  收藏  举报
(评论功能已被禁用)
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示