获取 IE 浏览器版本以及判断是否开启 cookie

本文实现两个功能

  • 获取 IE 浏览器版本
  • 判断浏览器是否开启 cookie

1.获取 IE 浏览器版本

代码参考于网络

// 判断 IE 浏览器版本
function IEVersion() {
  var userAgent = navigator.userAgent; // 取得浏览器的 userAgent 字符串  
  var isIE = userAgent.indexOf('compatible') > -1 && userAgent.indexOf('MSIE') > -1; // 判断是否 IE<11 浏览器  
  var isEdge = userAgent.indexOf('Edge') > -1 && !isIE; // 判断是否 IE 的 Edge 浏览器  
  var isIE11 = userAgent.indexOf('Trident') > -1 && userAgent.indexOf('rv:11.0') > -1;
  if (isIE) {
    var reIE = new RegExp('MSIE (\\d+\\.\\d+);');
    reIE.test(userAgent);
    var fIEVersion = parseFloat(RegExp["$1"]);
    if (fIEVersion == 7) {
      return 7;
    } else if (fIEVersion == 8) {
      return 8;
    } else if (fIEVersion == 9) {
      return 9;
    } else if (fIEVersion == 10) {
      return 10;
    } else {
      return 6; // IE 版本 <= 7
    }   
  } else if (isEdge) {
    return 'edge'; // edge
  } else if (isIE11) {
    return 11; // IE11  
  } else {
    return -1; // 不是 IE 浏览器
  }
}
var ieV = IEVersion()
// 只兼容 IE11
if (ieV != -1 && ieV != 'edge' && ieV != 11) {
  // 相应操作
}

2.判断浏览器是否开启 cookie

如果用户将 cookie 功能关闭,开发者将无法使用 cookie、localStorage、sessionStorage功能。

Navigator.cookieEnabled 可以判断浏览器是否开启 cookie,但其兼容性并不好:https://www.caniuse.com/?search=Navigator

《获取 IE 浏览器版本以及判断是否开启 cookie》

因此,需要做代码兼容 

// 判断浏览器是否禁用 cookie
function cookieEnable() {
  var result = false;
  if (navigator.cookiesEnabled) {
    return true;
  }
  document.cookie = 'testcookie=yes;';
  var cookieSet = document.cookie;
  if (cookieSet.indexOf('testcookie=yes') > -1) {
    result = true;
  }
  document.cookie = '';
  return result;
}
if (!cookieEnable()) {
  alert('请先开启浏览器 Cookie,否则网页将无法正常使用!')
}

代码参考:

JAVASCRIPT判断IE是否开启COOKIE

    原文作者:前端@小菜
    原文地址: https://blog.csdn.net/qq_39025670/article/details/111218266
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞