打印指定區域Html頁面并自動分頁
最近項目中需要用到打印HTML頁面,需要指定區域打印html打印指定區域內容,使用..js 插件
用法:
$("div#printmain").printArea();
但還是會打印DIV后面的內容,這里可以使用CSS控制打印分頁
有時用CSS控制分頁了但還是會連續打印頁面,這里就可以用上 插件中的屬性參數。
部分源碼:
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定義了兩個屬性,指定popup時會打開新窗口,可以視為打印預覽頁面,默認為。
@ | [] | (false),true 打印完成后是否開閉預覽頁面,默認為false(不關閉)。
$("div#printmain").printArea({mode:"popup",popClose:true});
這樣就可以指定DIV打印了。
下面說一下我新增兩個屬性的用途
:
需要打印的第二個DIV ,當然會是第二頁,這個頁面比較長,需要自動分頁,并且表格中每行都不一樣,有些行跨了多行,這里打印出來,一行可能會打印在兩張紙上。
:
第二個DIV分成多頁里,每一頁的表頭都需要一樣,這個參數就是公用表頭。
這兩個參數都對應著頁面中的DIV,如: