判断游览器内核

/**

 * 获取浏览器类型和版本

 * @param debug { Boolean }

 * @returns {{isEdge: boolean, isIE: boolean, isAndroid: boolean, isIE9: boolean, isIOS: boolean, isChrome: (boolean|boolean)}}

 */

function getBrowserType(debug) {

  var inBrowser = typeof window !== 'undefined';

  var inWeex = typeof WXEnvironment !== 'undefined' && !!WXEnvironment.platform;

  var weexPlatform = inWeex && WXEnvironment.platform.toLowerCase();

  var UA = inBrowser && window.navigator.userAgent.toLowerCase();

  var isIE = UA && /msie|trident/.test(UA);

  var isIE9 = UA && UA.indexOf('msie 9.0') > 0;

  var isEdge = UA && UA.indexOf('edge/') > 0;

  var isAndroid = (UA && UA.indexOf('android') > 0) || (weexPlatform === 'android');

  var isIOS = (UA && /iphone|ipad|ipod|ios/.test(UA)) || (weexPlatform === 'ios');

  var isChrome = UA && /chrome\/\d+/.test(UA) && !isEdge;

  if (debug) {

    if (isIE) console.log('ie: ', isIE);

    if (isIE9) console.log('ie: ', isIE9);

    if (isEdge) console.log('ie: ', isEdge);

    if (isAndroid) console.log('isAndroid: ', isAndroid);

    if (isIOS) console.log('isIOS: ', isIOS);

    if (isChrome) console.log('isChrome: ', isChrome);

  }

  return {

    isIE,

    isIE9,

    isEdge,

    isAndroid,

    isIOS,

    isChrome

  };

}

 

module.exports = getBrowserType;

posted @ 2020-05-21 10:17  xyyyy  阅读(155)  评论(0编辑  收藏  举报