1. 程式人生 > >Web 應用中使用印表機列印網頁資訊

Web 應用中使用印表機列印網頁資訊

最近在公司專案中需要用到是web應用中列印使用者的測試報告,所以就對這方面做了一些研究。

首先,如果單純的只是列印web頁面的所有資訊,我們可以直接在JS的方法中使用

window.print()函式,即可呼叫瀏覽器的列印服務。親測IE、Google  Chrome 、360極速、QQ瀏覽器和firxo可用。

然後,對於頁面的某一些資訊,是我們不需要的,這時候我們想要在列印的時候把它隱藏掉,

在列印結束以後在Web網頁上的顯示沒有任何變化,這時候我們可以使用:

window.onbeforeprint()和window.onafterprint()方法進行處理。

示例如下:

(1)在列印的時候我需要隱藏掉我的列印按鈕

 function beforePrint() {
            document.getElementById('printBtn').className = "hidden";
 }

(2) 在列印結束以後,我需要顯示我剛才隱藏掉的列印按鈕

 function afterPrint() {
            document.getElementById('printBtn').className = "btn btn-primary";
 }

(3)在列印的時候引用上述的兩個方法

 function printReport() {
            window.onbeforeprint = beforePrint();
            window.print();
            window.onafterprint = afterPrint();
}