Проблема:печать только содержимое фрейма, когда пользователь выбирает Файл-> Печать
У меня есть приложение, которое загружает содержимое из других серверов в качестве . Пользователи хотят иметь возможность печатать содержимое в iframe, что иногда может быть довольно длинным и заставляет прокручивать iframe. При печати печатается только область, отображаемая в окне просмотра iframe. Остальное отрезано.
Что я пробовал:
Использование @media print
стилей, я могу скрыть все остальные элементы на странице и разверните IFRAME на ширину и высоту 100%. То, что я не могу сделать AFAICT, изменяет его размер на w/h фактического содержимого (используя только CSS), поэтому, если 100% недостаточно, контент усекается.
Я знаю, что это разрешимо через javascript, но браузеры не всегда предлагают крючок событий для file-> print, поэтому я не могу запустить javascript, когда это необходимо.
Я мог бы создать пользовательскую кнопку «печать», чтобы JS мог работать, и iframe был бы правильно напечатан, но он не позволяет «Предварительный просмотр», поскольку браузеры не предлагают JS-метод для это.
Я в тупике здесь, есть ли ответ?
Это не касается проблемы. Пользователи хотят использовать File-> print или print preview, и мне нужно иметь возможность подключиться к этому и отображать только содержимое iframe. –
'File-> print' будет печатать окно« parent ». Если вы должны использовать это - единственный параметр, который у вас есть, - установить положение iframe в 0-0 (верхний левый угол), установить ширину iframe на ширину окна и установить высоту iframe на высоту его содержания. Это единственный способ, которым вы действительно можете распечатать/просмотреть окно, а фактическим «выводом» будет весь контент iframe. – Dekel
Правильно, но для этого мне нужен способ запуска JS-функции, когда пользователь печатает или запрашивает предварительный просмотр печати. Кажется, что нет последовательного способа сделать это. –