From 3131dd59ec0115034fd27fe6a18deda13751a986 Mon Sep 17 00:00:00 2001 From: Catouse Date: Wed, 27 Dec 2017 12:54:02 +0800 Subject: [PATCH] * refactor codes. --- src/js/device.js | 61 +++++++++++++++++++++--------------------------- 1 file changed, 26 insertions(+), 35 deletions(-) diff --git a/src/js/device.js b/src/js/device.js index 7854f4d06..801cbf880 100644 --- a/src/js/device.js +++ b/src/js/device.js @@ -16,43 +16,34 @@ var resetCssClass = function() { var width = $window.width(); - var classNames = ''; - - if (width >= desktopLg) { - classNames += ' screen-desktop-wide'; - } else if (width >= desktop && width < desktopLg) { - classNames += ' screen-desktop'; - } else if (width >= tablet && width < desktop) { - classNames += ' screen-tablet'; - } else { - classNames += ' screen-phone'; - } - if (width < desktop) { - classNames += ' device-mobile'; - } else { - classNames += ' device-desktop'; - } - if ('ontouchstart' in document.documentElement) { - classNames += ' is-touchable'; - } - - var userAgent = navigator.userAgent; - if (userAgent.match(/(iPad|iPhone|iPod)/i)) { - classNames += ' os-ios'; - } else if (userAgent.match(/android/i)) { - classNames += ' os-android'; - } else if (userAgent.match(/Win/i)) { - classNames += ' os-windows'; - } else if (userAgent.match(/Mac/i)) { - classNames += ' os-mac'; - } else if (userAgent.match(/Linux/i)) { - classNames += ' os-linux'; - } else if (userAgent.match(/X11/i)) { - classNames += ' os-unix'; - } - $('html').addClass(classNames); + $('html').toggleClass('screen-desktop', width >= desktop && width < desktopLg) + .toggleClass('screen-desktop-wide', width >= desktopLg) + .toggleClass('screen-tablet', width >= tablet && width < desktop) + .toggleClass('screen-phone', width < tablet) + .toggleClass('device-mobile', width < desktop) + .toggleClass('device-desktop', width >= desktop); }; + var classNames = ''; + var userAgent = navigator.userAgent; + if (userAgent.match(/(iPad|iPhone|iPod)/i)) { + classNames += ' os-ios'; + } else if (userAgent.match(/android/i)) { + classNames += ' os-android'; + } else if (userAgent.match(/Win/i)) { + classNames += ' os-windows'; + } else if (userAgent.match(/Mac/i)) { + classNames += ' os-mac'; + } else if (userAgent.match(/Linux/i)) { + classNames += ' os-linux'; + } else if (userAgent.match(/X11/i)) { + classNames += ' os-unix'; + } + if ('ontouchstart' in document.documentElement) { + classNames += ' is-touchable'; + } + $('html').addClass(classNames); + $window.resize(resetCssClass); resetCssClass(); }(window, jQuery)); -- GitLab