Невозможно сохранить объект в окне на IE - PullRequest
0 голосов
/ 16 апреля 2020

Я хотел бы сохранить объект в window. В настоящее время он работает на Chrome, Edge, Firefox, но не IE.

Мой код:

(function() {

  'use strict';

  var bottom = Object.create(null);

  bottom = {};
  bottom.tools = {};
  bottom.tools.detectIEEdge = detectIEEdge;

  function detectIEEdge() {
    var ua = window.navigator.userAgent,
        msie, trident, rv;
    msie = ua.indexOf('MSIE ');
    if (msie > 0) {
      return parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10);
    }
    trident = ua.indexOf('Trident/');
    if (trident > 0) {
      rv = ua.indexOf('rv:');
      return parseInt(ua.substring(rv + 3, ua.indexOf('.', rv)), 10);
    }
    return false;
  }

  window.bottom = bottom;

  })();

И мой код в HTML:

<script>
  console.log(window.bottom) // undefined
</script>

1 Ответ

1 голос
/ 17 апреля 2020

Вы сказали: " Моя главная цель - предоставить функцию для определения, использует ли пользователь IE. "

. Я предлагаю вам привести приведенный ниже пример, который может помочь вам определить браузер IE и его версию.

<!DOCTYPE html> 
<html> 
  
<head> 
    <title> 
      Detects user uses Internet Explorer 
  </title> 
</head> 
  
<body> 
    <center> 
        <h1 style="color:green">Test Demo</h1> 
        <script> 
            //detects if user uses Internet Explorer 
            //returns version of IE or false, if browser is not IE 
            //Function to detect IE or not 
            function IEdetection() { 
                var ua = window.navigator.userAgent; 
                var msie = ua.indexOf('MSIE '); 
                if (msie > 0) { 
                    // IE 10 or older, return version number 
                    return ('IE ' + parseInt(ua.substring( 
                      msie + 5, ua.indexOf('.', msie)), 10)); 
                } 
                var trident = ua.indexOf('Trident/'); 
                if (trident > 0) { 
                    // IE 11, return version number 
                    var rv = ua.indexOf('rv:'); 
                    return ('IE ' + parseInt(ua.substring( 
                      rv + 3, ua.indexOf('.', rv)), 10)); 
                } 
                // User uses other browser 
                return ('Not IE'); 
            } 
            var result = IEdetection(); 
            document.write(result); 
        </script> 
    </center> 
</body> 
  
</html> 

Выход:

enter image description here

Ссылка:

Как чтобы проверить, использует ли пользователь Inte rnet Explorer в JavaScript?

...