0

私は初心者です。非常に初歩的な質問でしたらすみません。window.print() で CSS を非表示にして表示しています。IE8 および FF では、印刷時に応答するまでページの実行が停止し (印刷またはキャンセルのいずれか)、再度開始してページの読み込みを完了します。しかし、IE6 と IE7 では、印刷ダイアログ ボックスで応答するまで、ページの読み込みは待機しません。印刷ダイアログ ボックスで応答 (印刷またはキャンセル) するまでページの実行を一時停止するにはどうすればよいですか? 特定の時間のための settimeout は使用したくありません。すぐに印刷することを選択した場合、settimeout が期限切れになるまでページは読み込まれず、その逆も同様です。助けてください。

4

1 に答える 1

1

で隠したり見せたりしないでくださいwindow.print()。正しく動作することはなく、他の問題を引き起こす可能性があります。

代わりに、別の印刷 CSS ファイルを使用します。

<link href="/Content/Print.css" rel="stylesheet" type="text/css" media="print"/> 

このファイルは、次のような印刷用のスタイルを定義します。

.noprint
{
    display: none !important;
}

次に、印刷したくない要素をマークアップできます。

<img class="foo bar noprint" ...

での非表示と表示とは異なりwindow.print()、これは JavaScript を無効にした状態で機能します。

于 2009-12-10T22:00:05.553 に答える