jQuery.checkAgent

jQuery Plugin

HTML

<h1>jQuery.checkAgent</h1>
<p id="is-smartphone" class="sample">スマホの時だけ青くなります</p>
<div class="sample">
    <div id="info"></div>
</div>

CSS

h1{
    font-weight:bold;
    margin:1em 0;
}

.pc h1{
    color:#1e90ff;
}
.smartphone h1 {
    color:#5f9ea0;
}

.garapagos h1 {
    color:#7b68ee;
}

.sample{
    border: solid 1px #ccc;
    padding: 0.5em;
    margin:1em 0;
}

#is-smartphone.smartphone {
    background: #000099;
    color:#fff;
}

JavaScript

/**
 * User-Agent check Plugin
 * User: Tenderfeel
 * Date: 11/06/20
 * LastModified: 11/06/22
 *
 */


(function($){
    /**
     * jQuery function 'checkAgent'
     * @param method {string|object|undefined}
     *
     * $(document.body).checkAgent({});
     */
    $.fn.checkAgent = function(method){

        var ua = navigator.userAgent;
        var ws = $(window).width();
        var sw  = screen.width;

        var TYPE = 'PC';
        var OS = null;
        var APPLE = false;
        var ANDROID = false;
        var GARAPAGOS = false;
        var DEVICE_NAME = null;
        var VERSION = null;
        var LOCALE = null;
        var LANG = null;
        var COUNTRY = null;
        var SMARTPHONE = false;
        
        var _doLocale = function(){
            LOCALE = window.navigator.language || $('html').attr('lang');
            if(LOCALE && LOCALE.indexOf('-') !== -1){
                var ls = LOCALE.split('-');
                LANG = ls[0];
                COUNTRY = ls[1];
            }else{
                LANG = LOCALE;
                COUNTRY = 'unknown';
            }
        };

        var _doOS = function(){
            if(ua.indexOf('Win') !== -1){
                OS = 'win';
            }else if(ua.indexOf('Mac') !== -1){
                OS = 'mac';
            }else{
                OS = 'unknown';
            }
        };

        var _doGarapagos = function(){

            _doLocale();
            var m;
            
            if(ua.indexOf('DoCoMo') !== -1||ua.indexOf('FOMA') !== -1){
                OS = 'docomo';
                TYPE = 'garapagos';
                m = ua.match(/Mozilla\/[\d\.]+\s\(([\d\w]+);\w+;([\w\d]+);\w+\)/i);
                if(m){
                    VERSION = m[2];
                    DEVICE_NAME = m[1];
                }
                GARAPAGOS = true;
                return true;
                
            }else if(ua.indexOf('KDDI') !== -1){
                //auはOperaMiniらしい
                OS = 'au';
   ...