jQueryを使って、ユーザーエージェント(スマホ / タブレット / IE / PC)を判別するスクリプト -『javascript』

table of contents

    ユーザーエージェントを判別して処理を加えるためのスクリプトです。

    ユーザーエージェントごとに何かの処理をしたい

    スマホとタブレットとPCを判別して、処理を分岐させたり、特定のクラスを付与してスタイルを当てる…などなど、レスポンシブデザインの要件では特に「ユーザーエージェントごとに何かしたい」ということがあると思います。

    スクリプトの流れは、ユーザーエージェントをスマホ / タブレット / IE / PCごとに数値化して、その数値によって処理を分岐していきます。

    javascript

    
    function uaCheck () {
      // tab or sp or ie
      
      var ua = (function (u) {
        return {
          //
          sp: (u.indexOf("windows") != -1 && u.indexOf("phone") != -1) || u.indexOf("iphone") != -1 || u.indexOf("ipod") != -1 || (u.indexOf("android") != -1 && u.indexOf("mobile") != -1) || (u.indexOf("firefox") != -1 && u.indexOf("mobile") != -1) || u.indexOf("blackberry") != -1,
          //
          tab: u.indexOf("ipad") != -1 || (u.indexOf("android") != -1 && u.indexOf("mobile") == -1) || (u.indexOf("firefox") != -1 && u.indexOf("tablet") != -1) || u.indexOf("kindle") != -1 || u.indexOf("silk") != -1 || u.indexOf("playbook") != -1,
          //
          ie: u.indexOf('msie') != -1 || u.indexOf('trident') != -1
        }
      })(window.navigator.userAgent.toLowerCase());
    
        // numbering
        var num;
      if (ua.sp) {
        // sp
        num = 3;
      } else if (ua.tab) {
        // tab
        num = 2;    
      } else if (ua.ie) {
        // IE
        num = 1;
      } else {
        // other
        num = 0;
      }
      
      if (num == 3) {
        $('#ex').text('sp');
      } else if (num == 2) {
        $('#ex').text('pad');
      } else if (num == 1) {
        $('#ex').text('IE');
      } else {
        $('#ex').text('PC, not IE');
      }
    
    }
    uaCheck ();
    
    

    おわります。

    jQueryを使って、ユーザーエージェント(スマホ / タブレット / IE / PC)を判別するスクリプト -『javascript』のアイキャッチ画像

    share

    related