Javascript-форум (https://javascript.ru/forum/)
-   Javascript под браузер (https://javascript.ru/forum/css-html/)
-   -   Не срабатывает print() в дочернем окне (https://javascript.ru/forum/css-html/15837-ne-srabatyvaet-print-v-dochernem-okne.html)

SindBad 15.03.2011 17:07

Не срабатывает print() в дочернем окне
 
Всем привет.
Мне потребовалось распечатать блок страницы. Для этого я решил открыть дочернее окно, вставить него этот блок, затем распечатать:
function printBill(){
        var h = $('#pd4').height();
        var w = $('#pd4').width();
        var printWin = window.open('','Квитанция','left=50,top=50,width='+w+',height='+h);
        printWin.document.write('<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">');
        printWin.document.write('<html xmlns="http://www.w3.org/1999/xhtml">');
        printWin.document.write('<head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" />');
        printWin.document.write('<title>Квитанция</title>');
        
        printWin.document.write('<link rel="stylesheet" type="text/css" href="/template/css/style.css" />');
        printWin.document.write('<link href="/template/css/printpd4.css" rel="stylesheet" type="text/css" media="print" />');
        printWin.document.write('<link href="/template/css/csspd4.css" rel="stylesheet" type="text/css" media="screen" />');
        
        printWin.document.write('<style>body{background:#ffffff;}</style>');
        printWin.document.write('</head><body><div id="pd4"></div></body>');
        printWin.document.getElementById('pd4').innerHTML = $('#pd4').html();
        printWin.print();
    }

В FF всё как надо. В Опере и ИЕ print не срабатывает, при этом в ИЕ, кажется, зависает загрузка какого-то из стилей (но страница выглядит нормально). Хотя и без стилей печать тоже не срабатывает.

Где собака порылась?


Часовой пояс GMT +3, время: 04:18.