天天看點

JS實作浏覽器列印、列印預覽

window.print()

window.print();會彈出列印對話框,列印的是window.document.body.innerHTML中的内容,下面是從網上摘到的一個局部列印的例子,該例子的不足是列印會修改頁面的内容。

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>局部列印案例</title>
<script type="text/javascript">   
    function doPrint() {    
        bdhtml=window.document.body.innerHTML;    
        sprnstr="<!--startprint-->";    
        eprnstr="<!--endprint-->";    
        prnhtml=bdhtml.substr(bdhtml.indexOf(sprnstr)+17);    
        prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));    
        window.document.body.innerHTML=prnhtml; 
        window.print();    
}    
</script>
</head>
 
<body>
<p>1不需要列印的地方</p>
<p>2這裡不要列印啊</p>
<!--startprint--><!--注意要加上html裡star和end的這兩個标記-->
<h1>列印标題</h1>
<p>列印内容~~</p>
<!--endprint-->
<button type="button" onclick="doPrint()">列印</button>
<p>不列印的地方啊哈哈哈哈</p>
<p>2</p>
</body>
</html>