Safari падает при выполнении window.open на устройствах iOS - PullRequest
0 голосов
/ 07 сентября 2018

У меня есть веб-сайт с функцией печати html-страницы после нажатия кнопки печати. Блок else в приведенном ниже коде выполняется в браузере Safari после того, как пользователь нажимает кнопку печати. ​​

Сразу же после вызова функции window.print () вызывается window.close (), которая закрывает фоновую страницу, с которой была задана команда печати для печати ее содержимого.

Но в окне печати iOS появляются пустые страницы. Window.close () может быть причиной пустых страниц.

Window.print () может не получить данные для печати до выполнения window.close ().

function PrintData() {

          $("#nav").hide();

          if (localStorage.IE == true) {

              setTimeout(function () {
                  window.print();

                  window.onfocus = function () { window.close(); }

              }, 1000);
          }

          else {
              window.print()
              window.close();
          }
      }

Эта проблема появляется на устройствах iOS с версией> = 11.0.0.

Я пытался установить setTimeout () для задержки вызова window.Close (), но в результате браузер Safari потерпел крах.

Пробовал функцию обратного вызова, но безрезультатно. Нужна помощь!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...