別々に印刷したい3つのdivを含むページがあります-そしてそれを手動で行うことができます。ただし、Webアプリはサイレント印刷でChromeを実行しているため、これらの3つのdivを3つの別々の印刷ジョブで印刷する必要があります。印刷スタイルシートは私が必要としているものではありません-3つの別々の印刷ジョブが必要です...
したがって、window.print()を複数回トリガーする必要があります。私が思いついた最善かつ唯一の解決策は、次のように、印刷機能を3回トリガーすることです。
setTimeout(function() { printContent('print1', 'letter'); }, 0);
setTimeout(function() { printContent('print2', 'letter'); }, 1);
setTimeout(function() { printContent('print3', 'letter'); }, 2);
ただし、somethimesChromeは関数を3回実行できません。関数が3回続けて正しくトリガーされることを確認するにはどうすればよいですか?
誰かがそれを面白いと思うなら、私のprintContent()関数はこれです:
function printContent(divContent, divClass) {
var divContent = $('#' + divContent).html();
$('#print-spooler-box').html('').addClass(divClass).html(divContent);
window.print();
$('#print-spooler-box').removeClass(divClass);
}