jQuery指定領域Htmlページを印刷し、自動的にページングする
2601 ワード
最近のプロジェクトではHTMLページを印刷する必要があり、領域を指定して印刷する必要があり、jqueryを使用する.PrintArea.jsプラグイン
使用方法:
しかしDIVの後の内容を印刷することができて、ここでCSSを使って印刷のページングを制御することができます
プラグインで定義されている属性フォーマットがJSONであることがわかります.以下、一部の属性について説明します.
modesは2つのプロパティを定義し、popupを指定すると新しいウィンドウが開き、印刷プレビューページと見なすことができ、デフォルトはiframeです.
@popClose|[boolean]|(false)、true印刷が完了したらプレビューページを閉じるかどうか、デフォルトはfalse(閉じない)です.
これでDIV印刷を指定できます.
次に私が2つの属性の用途twoDivを追加します:印刷する必要がある2番目のDIV、もちろん2番目のページで、このページは比較的に長くて、自動的にページを分ける必要があって、しかも表の中ですべての行はすべて異なって、いくつかの行は複数の行にまたがって、ここで印刷して、1行は2枚の紙の上で印刷するかもしれません.
pageTitle:2番目のDIVは複数のページに分かれており、各ページのヘッダーには同じものが必要です.このパラメータは共通のヘッダーです.
この2つのパラメータは、次のようなページ内のDIVに対応しています.
使用方法:
$("div#printmain").printArea();
しかしDIVの後の内容を印刷することができて、ここでCSSを使って印刷のページングを制御することができます
有时用CSS控制分页了但还是会连续打印页面,这里就可以用上PrintArea 插件中的属性参数。
PrintArea部分源码:
var modes = { iframe : "iframe", popup : "popup" };
var defaults = { mode : modes.iframe,
popHt : 800,
popWd : 800,
popX : 200,
popY : 200,
popTitle : '',
popClose : false ,
twoDiv : '', // ,
pageTitle: ''};// ,
プラグインで定義されている属性フォーマットがJSONであることがわかります.以下、一部の属性について説明します.
modesは2つのプロパティを定義し、popupを指定すると新しいウィンドウが開き、印刷プレビューページと見なすことができ、デフォルトはiframeです.
@popClose|[boolean]|(false)、true印刷が完了したらプレビューページを閉じるかどうか、デフォルトはfalse(閉じない)です.
$("div#printmain").printArea({mode:"popup",popClose:true});
これでDIV印刷を指定できます.
次に私が2つの属性の用途twoDivを追加します:印刷する必要がある2番目のDIV、もちろん2番目のページで、このページは比較的に長くて、自動的にページを分ける必要があって、しかも表の中ですべての行はすべて異なって、いくつかの行は複数の行にまたがって、ここで印刷して、1行は2枚の紙の上で印刷するかもしれません.
pageTitle:2番目のDIVは複数のページに分かれており、各ページのヘッダーには同じものが必要です.このパラメータは共通のヘッダーです.
この2つのパラメータは、次のようなページ内のDIVに対応しています.
, 。
writeDoc.open();
writeDoc.write(html); // HTML
writeDoc.close();
printWindow.focus();
printWindow.print();
htmlを するコードを に します
html+=docType() + "" + getHead() + getBody(thisPage) + "";
プラグインには の が されています. は も していません.ここでは り けません.
は の えです.
1つのDIVの を ページに し、1 が ページにまたがらないようにするには、htmlコードの に を れなければなりません.
まずDIVの のすべての を つけて、 の の にこれらの を えた に さは1ページに して、ページを ける があって、ここで1ページの で の がちょうど のページにまたがって、この を して、 のページに くことができます.
ページの が すると、HTMLタグの ろにCSSページングタグを ける があります.これにより、プリンタはおとなしくページングされます. すると、 されたプレビューページの1ページは、 するヘッダーとDTD を つHTMLページです.
プレビューが4ページしかないのに、 されると ページになる もいるかもしれませんが、 したページにHTMLラベルの にページングマークが いているかどうかを する があります. タグは ずHTMLタグの にしなければならないので、 が1ページ く される を することができます.
PS: は が したJSプラグインを えます. のプロジェクトサイクルのせいで、コードの くの が んでしまいました. の の を するためです. コードがめちゃくちゃに かれているので、 も がもっと して、 させることを んでいるのかを してほしい.