パソコン、スマートフォン、タブレットで使用するOS、ブラウザ、バージョンなどを判定して分岐処理をする記述を書いてみた。Windows,Mac,Android,iPhone,iPadなど自分が必要な範囲で分岐。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 | <! DOCTYPE html> < html lang = "ja" > < head > < meta charset = "UTF-8" > < title >CSSハックを使用しないOSとバージョンの判定</ title > <!--[if lt IE 7]><html class="nojs ie ie6" lang="ja"><![endif]--> <!--[if IE 7]><html class="nojs ie ie7" lang="ja"><![endif]--> <!--[if IE 8]><html class="nojs ie ie8" lang="ja"><![endif]--> <!--[if IE 9]><html class="nojs ie ie9" lang="ja"><![endif]--> <!--[if (gt IE 9)|!(IE)]><!----> < html class = "nojs" lang = "ja" > <!--[endif]--> </ head > < body > < script > $(function(){ var ua = navigator.userAgent.toLowerCase(); var isWindows = /windows/.test(ua); var isMac = /mac/.test(ua); var isIPhone = /i(phone|pod)/.test(ua); var isIPad = /ipad/.test(ua); var isIOS = isIPhone || isIPad; var isAndroid = /android/.test(ua); var isAndroidMobile = /android(.+)?mobile/.test(ua); var isIE = /msie|trident/.test(ua); var isFirefox = /firefox/.test(ua); var isChrome = /chrome/.test(ua); var isCrios = /crios/.test(ua); var isSafari = /safari/.test(ua); var isOpera = /opera/.test(ua); var isOperaMobile = /opera mobi/.test(ua); var isOperaMini = /opera mini/.test(ua); var isTablet = isIPad || (isAndroid && !isAndroidMobile && !isOperaMobile); var isSmartphone = isIPhone || isAndroidMobile; var isPC = !isIOS && !isAndroid; $("html").removeClass("nojs"); if(isPC){ $("html").addClass("pc"); } else if(isTablet){ $("html").addClass("tablet"); } else if(isSmartphone){ $("html").addClass("phone"); } $("body").append(ua + "< br >"); if(isIPhone){ $("body").append("isPhone" + "< br >"); } if(isIPad){ $("body").append("isIPad" + "< br >"); } if(isIOS){ $("body").append("isIOS" + "< br >"); } if(isAndroidMobile){ $("body").append("isAndroidMobile" + "< br >"); } if(isAndroid && !isAndroidMobile){ $("body").append("isAndroid" + "< br >"); } if(isTablet){ $("body").append("isTablet" + "< br >"); } if(isSmartphone){ $("body").append("isSmartphone" + "< br >"); } if(isPC){ $("body").append("isPC" + "< br >"); } if(isWindows){ $("body").append("isWindows" + "< br >"); } if(isMac && !isTablet && !isSmartphone){ $("body").append("isMac" + "< br >"); } if(isIE){ $("body").append("isIE" + "< br >"); } if(isFirefox){ $("body").append("isFirefox" + "< br >"); } if(isChrome || isCrios){ $("body").append("isChrome" + "< br >"); } if(isOpera && !isOperaMobile && !isOperaMini){ $("body").append("isOpera" + "< br >"); } if(isOperaMobile){ $("body").append("isOperaMobile" + "< br >"); } if(isOperaMini){ $("body").append("isOperaMini" + "< br >"); } if(isSafari && !isChrome && !isCrios){ $("body").append("isSafari" + "< br >"); } }); </ script > </ body > </ html > |
パソコン、スマホ(スマートフォン)・タブレットのユーザーエージェント判定
https://iwb.jp/s/jsua/