четверг, 1 декабря 2011 г.

Версия для печати с помощью jQuery

В данном посте приведу небольшой пост, как просто и быстро сделать вызов версии для печати веб страницы с помощью jQuery.
Итак, предположим, что у нас есть страница http://yoursite.ru/articles/?id=1 и её версия для печати http://yoursite.ru/articles/?id=1&print=Y. 

Задача: 
Открыть версию для печати в новом окне и открыть для неё окно печати в браузере.

Сделаем ссылку со страницы на её версию для печати, добавим к ссылке класc print:

<a href="http://yoursite.ru/articles/?id=1&print=Y" class="print">Версия для печати</a>

В head добавим код:

<script>
 $(function() {
     $('.print').click(function(e) {

           // Перехватываем переход по ссылке
           e.preventDefault();

           // Открывает новое окно
           print = window.open(
              $(this).attr('href'),
              'print_win',
              'width=800,height=600'
);

// Запускаем диалог для печати
print.print();
       });
   });
</script>


И ещё можно добавить красоты в css (/images/print_ico.png — иконка принтера 32x32):



.print {
   line-height: 35px; 
   padding-left: 35px; 
   background: url('/images/print_ico.png') 0 0 no-repeat;
   display: inline-block;
}

Выглядеть будет примерно вот так:


2 комментария:

  1. Этот комментарий был удален автором.

    ОтветитьУдалить
  2. Ваш код не совсем работает, окошко то открывается, но на печать не отправляется...
    http://jsfiddle.net/Tmin10/KVm3D/

    ОтветитьУдалить