Данные внутри функции addEventListener не отображаются в IE, где они нормально работают в Chrome - PullRequest
0 голосов
/ 02 апреля 2020
<script type="text/javascript">
  function onLoadFunction() {
    window.opener.postMessage({ ready: true }, window.origin);
    window.addEventListener('message', message => {
      if (message.data !== undefined) {
        var textArea = document.getElementById("txtXML");
        if (textArea !== undefined) {
          textArea.value += message.data;
          return; // Skip message in this event listener
        }
      }
    });
  }
</script>
<body onload="onLoadFunction()">
  <link rel="stylesheet" href="./viewXML.css">
  <textarea class="posu-textarea" disabled id="txtXML"></textarea>
</body>

Это страница html У меня есть, где при нажатии кнопки эта страница с XML данными должна отображаться. Но в IE было выдано сообщение о том, что функция onload не определена в разделе тела. Поэтому я удалил это onload в теле и записал его как window.onload. Ошибка консоли исчезла, но данные не отображаются. Попытка отладки, но она не входит в функцию addEventListener.

<body>
  <script type="text/javascript">
    window.onload = function onLoadFunction() {
      window.opener.postMessage({ ready: true }, window.origin);
      window.addEventListener('message', function (message) {
        alert(message.value);
        if (message.data !== undefined) {
          var textArea = document.getElementById("txtXML");
          if (textArea !== undefined) {
            textArea.value += message.data;
            JSON.stringify(textArea.value);
            return; // Skip message in this event listener
          }
        }
      }, false);
    }
  </script>
  <link rel="stylesheet" href="./viewXML.css">
  <textarea class="posu-textarea" disabled id="txtXML"></textarea>
</body*

Что еще нужно сделать, чтобы отобразить данные в IE?

...