2009-05-01 17 views
1

cbjsonline.comに、私はiframeでPDFを自動的にjavascriptで印刷しようとしています。iframe内からPDFを印刷するにはどうすればよいですか?

は現在、私のコードがある - (IFRAMEを開くリンクのonclickのに接続) - document.getElementById('fancy_frame').onload = setTimeout('window.print()',2500);

任意の提案ですか?このメソッドは、サファリでのみ機能します。

+0

他のブラウザでエラーが発生しますか?彼らは何ですか? – Adam

答えて

2

evalされた式ではなく、setTimeoutに関数ポインタを渡してみてください。

document.getElementById('fancy_frame').onload = setTimeout(printWindow, 2500); 

// implemented in the HTML that is loaded in 'fancy_frame' 
function printWindow() 
{ 
    window.print(); 
} 
+0

ありがとう!それは私がやってみたことですが、負荷時間はこれまでのところ変わりましたが、うまくいかなかったのです。また、IEは、PDFの代わりにブラウザウィンドウを印刷しようとしましたが、いくつかのjsエラーを出しました。 それはFirefoxとSafariのためにのみ行うかもしれません。 – CodeJoust

0

OK、私はユーザーにページを印刷させることにしました。 PDFを使ったiFramesはあまりにも可変で、javascriptで印刷しようとしていると思います。 誰かがこれを試してみたいと思えば、これが私の推薦です。 jetchloadを使用すると、読み込みハンドラではなく読み込みだけでなく、Adobe Readerの遅延がコンピュータによって大きく異なるため、アセットをチェックします。 また、名前を付けてiframe.print()の代わりにiframe.print()という名前で印刷する前にiframeに名前を付けてフォーカスを合わせると、現在のページを印刷しようとしません。 このアプリケーションではscribd ipaperビューアを使用することをお勧めします。

関連する問題