IE8 で作成するために、いくつかの変更を加える必要がありました (他の IE フレーバーではテストしませんでした)。
1) document.frames[param] は ID ではなく数字を受け入れるようです
printIframe(0, 'print');
function printIframe(num, id)
{
var iframe = document.frames ? document.frames[num] : document.getElementById(id);
var ifWin = iframe.contentWindow || iframe;
ifWin.focus();
ifWin.printPage();
return false;
}
2)ページの読み込み時に印刷ダイアログが表示され、「ここをクリックして印刷を開始する」へのリンクもありました(自動的に開始されなかった場合)。それを機能させるために、 focus() 呼び出しを追加する必要がありました
<script type="text/javascript">
$(function(){
printPage();
});
function printPage()
{
focus();
print();
}
</script>