一、打印頁面
在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-hant/n/361109.html