一、列印頁面
在Web開發過程中,我們經常需要列印頁面,而window.print()便是實現此功能的方法。
window.print()調用後,就會自動列印當前頁面。當然,瀏覽器會先彈出印表機對話框,讓我們選擇印表機和列印頁面的設置。同時,我們還可以在代碼中設置列印的一些參數。
window.print();
通過以上代碼,即可實現當前頁面的列印。
二、列印特定內容
除了列印整個頁面外,我們還可以通過指定特定的元素來進行局部列印。
function printDiv(divName) { var printContents = document.getElementById(divName).innerHTML; var originalContents = document.body.innerHTML; document.body.innerHTML = printContents; window.print(); document.body.innerHTML = originalContents; }
通過以上代碼,我們可以通過傳入要列印的元素的id,即可將該元素內部的內容列印出來,而不是整個頁面。
三、列印前的設置
在調用window.print()後,會彈出列印對話框。我們可以通過代碼對該對話框進行一些設置,如設置列印頁面的方向、頁邊距等。
function setPrintOptions() { var printOptions = ""; printOptions += "@media print {"; printOptions += "/* Define page size */ @page { size: A4; margin: 10mm 20mm 10mm 20mm; }"; printOptions += "/* Add a header and footer */ header { height: 50mm; background-color: grey; } footer { height: 20mm; background-color: grey; }"; printOptions += "/* Hide elements not to be printed */ .no-print { display: none; } }Print Preview
"; var popupWin = window.open('', '_blank', 'top=0,left=0,height=100%,width=auto'); popupWin.document.open(); popupWin.document.write(printOptions); popupWin.document.close(); }
通過以上代碼,我們可以設置該頁面列印時的頁面大小、頁邊距、頁眉頁腳以及隱藏不需要列印的元素。
四、列印完成後的回調
有些時候,我們需要在列印完成後進行一些操作,如提示用戶列印完成,或者進行其他業務邏輯相關的處理。此時,我們就可以使用window.print()的onafterprint事件。
window.onafterprint = function(){ alert("Print completed."); }
通過以上代碼,我們可以在列印完成後彈出提示框,告知用戶列印已完成。
五、總結
通過以上介紹,我們可以看到,window.print()是一個非常實用的方法,既可以列印整個頁面,也可以進行局部列印,同時還可以進行列印設置和列印完成後的回調處理。在日常開發中,我們經常需要使用到該方法,希望以上內容可以對大家有所幫助。
原創文章,作者:VMEZN,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/361109.html