есть простая функция
function autoprint(aId)
{
var atext = document.getElementById(aId).innerHTML;
var captext = window.document.title;
var prwin = open('');
prwin.document.open();
prwin.document.writeln('<html><head><title>Версия для печати<\/title> ');
prwin.document.writeln('<link media="screen" href="apm_print.css" type="text/css" rel="stylesheet">');
prwin.document.writeln('<script type="text/javascript" language="javascript" src="jquery.js"><\/script>');
prwin.document.writeln('<script type="text/javascript">');
prwin.document.writeln('$(document).ready(function() {window.print();});');
prwin.document.writeln('<\/script>');
prwin.document.writeln('<\/head><body text="#000000" bgcolor="#FFFFFF"><div onselectstart="return false;" oncopy="return false;">');
prwin.document.writeln('<div id="schet_pd" style="margin-bottom:5px;"><a href="" onclick="window.print();return false;">Печать<\/a> • <a href="javascript://" onclick="window.close();">Закрыть окно<\/a><\/div><hr>');
prwin.document.writeln('<h1>'+captext+'<\/h1>');
prwin.document.writeln(atext);
prwin.document.writeln('<\/div><\/body><\/html>');
prwin.focus();
prwin.print();
}
но она работает как-то очень странно, такое ощущение, что новое окно не может получить доступ к объекту печати. Если вызывать window.print(); в основном окне, он прекрасно показывает диалог печати, а во вновь открытом показывает фигу. По нажатию на кнопку тоже ничего не происходит. Что не так. Возможно нужно задавать новому окну какие-то специальные свойства? (Система ubuntu, впрочем, на винде тоже не работает)