What's the replacement for $.browser

前端 未结 6 825
粉色の甜心
粉色の甜心 2020-11-27 18:54

The jQuery document tags $.browser as deprecated. So what\'s the replacement for it?

6条回答
  •  攒了一身酷
    2020-11-27 19:14

    Based on jQuery migration plugin , I found this.

    jQuery.uaMatch = function( ua ) {
        ua = ua.toLowerCase();
        var match = /(chrome)[ \/]([\w.]+)/.exec( ua ) ||
            /(webkit)[ \/]([\w.]+)/.exec( ua ) ||
            /(opera)(?:.*version|)[ \/]([\w.]+)/.exec( ua ) ||
            /(msie) ([\w.]+)/.exec( ua ) ||
            ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec( ua ) || [];
        return {
            browser: match[ 1 ] || "",
            version: match[ 2 ] || "0"
        };
    };
    if ( !jQuery.browser ) {
        var 
        matched = jQuery.uaMatch( navigator.userAgent ),
        browser = {};
        if ( matched.browser ) {
            browser[ matched.browser ] = true;
            browser.version = matched.version;
        }
        // Chrome is Webkit, but Webkit is also Safari.
        if ( browser.chrome ) {
            browser.webkit = true;
        } else if ( browser.webkit ) {
            browser.safari = true;
        }
        jQuery.browser = browser;
    }
    

提交回复
热议问题