Есть ли способ задержать beforePrint, чтобы позволить завершить postMessage?Javascript

Форум по Javascript
Ответить
Anonymous
 Есть ли способ задержать beforePrint, чтобы позволить завершить postMessage?

Сообщение Anonymous »

Проблема
Моя проблема заключается в том, что после нажатия CTRL + P или «Файл» -> «Печать» данные из iframe не копируются в верхнее окно для печати.
Когда срабатывает событие beforeprint, вызывается функция «_beforePrinting», и если текущее окно не является верхним окном, вместе с данными отправляется сообщение window.top.postMessage. Когда сообщение получено, вызывается функция _handleBeforePrint, которая передает данные. Эта функция обрабатывает перемещение данных из iframe в верхнее окно для печати.
Дополнительная информация
Этот метод сбора информации и печати был сделан для избежать междоменной ошибки.
Снимки экрана
ФункцияbeforePrinting()
Прослушиватель событий сообщений, который вызывает handleBeforePrint()
Функция handleBeforePrint(), которая обрабатывает перемещение данных из iframe в верхнее окно для печати
Вопрос
Можно ли мне как-нибудь отложить событие перед печатью, чтобы сообщение было получено, функции были запущены, а затем произошла печать? Или есть какие-либо другие решения, которые позволят этому работать правильно?
Проверено
Я пробовал использовать setTimeout для имитации задержки.
Ожидания
Информация из iframe должна быть помещена в элементы printHeader и printContent в верхнем окне перед печатью страницы.

Подробнее здесь: https://stackoverflow.com/questions/793 ... -to-finish
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»