Перехват CTRL + P в JavaScript и вызов пользовательской функции для печати - PullRequest
0 голосов
/ 10 августа 2010

У меня есть веб-страница, где я показываю платежную информацию в поп.Это всплывающее окно представляет собой DIV, а не новое окно.В этом всплывающем окне есть два элемента div, один из которых предназначен для удержания кнопки печати и закрытия, а другой - для удержания iframe.

Тогда причина заключается в том, что при нажатии кнопки печати содержимое iframe печатается так, чтокнопки печати и закрытия не будут напечатаны.это похоже на ...

<div id='popupandcenterscreen'>
<div>... print and close buttons</div>
<div><iframe></div>
</div>

Итак, это листинг, в котором при нажатии на каждую запись появляется ссылка на счет, при этом отображается всплывающее окно, в котором загружается iframe для отображения платежной информации.

Когда пользователь нажимает кнопку печати, мы печатаем только содержимое документа iframe.

НО КОГДА ПОЛЬЗОВАТЕЛЬ ИСПОЛЬЗУЕТ CTRL + P полное окно, включая родительское окно backgroung, и этот всплывающий элемент div будет напечатан.

Что я думал, чтобы перехватывать Ctrl + P, когда всплывающее окно открыто, и печатать только содержимое iframe.

Как это могло быть возможно?

Ответы [ 2 ]

5 голосов
/ 10 августа 2010

Я думаю, что лучшим решением будет управление рендерингом с помощью @media правил в вашем CSS или включение различных таблиц стилей в зависимости от типа носителя.Затем вы можете использовать свойства CSS, такие как display, чтобы скрыть некоторые элементы для печати или даже задать им разные размеры и позиции.

1 голос
/ 12 августа 2010

Использование Css будет лучше, чем JavaScript.

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

Если вы используете JavaScript только для сортировки элементов, отображаемых при печати, когда пользователь нажимает Ctrl + P, это будет работать.

Но если пользователь щелкнет печать в меню, вам потребуется таблица стилей печати, чтобы отсортировать страницу.

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