window.open, а затем закрытие делает ввод не кликабельным - PullRequest
0 голосов
/ 09 июня 2019

У меня есть метод, который записывает содержимое на другую вкладку и распечатывает его, как только эта вкладка закрывается, она возвращается к моему основному приложению.Однако те, которые он возвратил, кажется, что все мои входы больше не кликабельны.Это означает, что я не могу получить курсор в любом элементе ввода.Если я щелкаю за пределами моего экрана и возвращаюсь, все снова начинает работать.

Вот мой метод:

this.printForm = function (html) {
        //check for content otherwise repeat
        var checkForContent = function () {
            setTimeout(function() {
                var tmp = WinPrint.document.querySelector('body').innerHTML;

                if (tmp.length) {
                    WinPrint.document.close();
                    WinPrint.focus();
                    WinPrint.print();
                    WinPrint.close();

                } else {
                    checkForContent();
                }
            }, 200);
        }

        var WinPrint = window.open();

        if (WinPrint === null) {
            swal({
                title: $translate.instant("ALLOW_POP_UP"),
                text: $translate.instant("IN_ORDER_FOR_ALL_FEATURES_TO_WORK_PLEASE_ALLOW_POP_UPS_FOR_THIS_APPLICATION"),
                type: "warning"
            });
        } else {
            WinPrint.document.write(html);

            checkForContent();
        }
    }

Единственное исправление, которое я обнаружил, было, если я поместил предупреждающее сообщение после WinPrint.close (), который по какой-то причине исправил это.Но, конечно, я не хочу это всплывающее окно, потому что оно просто ужасно

...