Печатать с использованием Javascript? - PullRequest
1 голос
/ 19 апреля 2009

У меня есть особый раздел на моей веб-странице. я хочу распечатать этот div только тогда, когда нажмите «печать» на моей веб-странице. У меня есть некоторый код JavaScript. Но это не очень хорошо отформатировано.

Есть ли какой-нибудь javascript для печати определенного раздела с моей веб-страницы?

Заранее спасибо

  • Гнанияр Зубаир

Ответы [ 5 ]

9 голосов
/ 19 апреля 2009

Вы можете указать таблицы стилей CSS с атрибутом media="print" и применить стиль display: none; ко всем элементам, кроме тех, которые вы хотите напечатать.

Например:

print.css

* { display: none; }
div.print_block { display: block; }

page.html

<HEAD>
<LINK rel="stylesheet" type="text/css" 
     media="print" href="print.css" />
</HEAD>

<DIV class="print_block">
   ...
</DIV>
4 голосов
/ 19 апреля 2009

Если вы хотите скрыть некоторые элементы div при печати, вы можете установить для них значение «display: none» в разделе материалов для печати вашей таблицы стилей, и они не будут отображаться.

Например, в вашей таблице стилей:

 @media print {

    div.header {
        display: none;
    }

    div.printable {
        page-break-inside: avoid;
        page-break-after: always;
    }
 }

Этот ответ почти такой же, как и те, которые избили меня на 4 минуты :-), просто заметка, что вам не нужна отдельная таблица стилей, если вы не хотите ...

Кроме того, «разрыв страницы: избегать;» и "разрыва страницы: всегда;" пункты хороши для распечатки нескольких делений, каждый на своей странице.

3 голосов
/ 13 мая 2009

Проверьте этот плагин jQuery jqPrint . Кажется, делать то, что вы хотите.

1 голос
/ 19 апреля 2009

Я не думаю, что есть прямой способ сделать это. Однако вы можете:

  • Создайте специальный CSS для media=print, где скрыты все, кроме одного div, который вы хотите распечатать, ИЛИ
  • Используйте скрытый iframe для содержимого, которое вы хотите напечатать

Поиск в терминах "частичная страница печати javascript" может помочь вам найти некоторые учебники.

0 голосов
/ 19 апреля 2009

Я видел SMF как это в одном проекте на моей работе. Вы должны открыть всплывающее окно во всплывающем окне, вы помещаете контент с родительской страницы, который хотите распечатать. И это все :)

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