web页面实现指定区域打印功能

第一种方法:使用CSS,定义一个.noprint的class,将不打印的内容放入这个class内。

详细如下:

<style media=print type=”text/css”> 

.noprint{visibility:hidden} 

</style> 

要打印的内容。哈哈!

<p class=”noprint”>将不打印的代码放在这里。</p> <p >打印的代码放在这里。</p> <button class=”noprint” type=”button” onclick=”window.print()”>print button</button>

第二种方法:指定打印区域

把要打印的内容放入一个 span中,然后通过一个函数打印。

<div> 所有内容 <span id=‘div1‘>把要打印的内容放这里</span> </div>

<script> function printme() { let oldBody = document.body.innerHTML // 保存 document.body.innerHTML=document.getElementById(‘div1‘).innerHTML; window.print(); document.body.innerHTML = oldBody // 恢复 } </script>

如果要打印的只是整个页面中的一小部分,就最好采用第二种方法。

第三种方法:如果要打印的页面排版和原web页面相差很大,采用此种方法。

点打印按钮弹出新窗口,把需要打印的内容显示到新窗口中,在新窗口中调用window.print()方法,然后自动关闭新窗口。     ———————————————————————————- JS 代码 
 

 <script type=”text/javascript”>   

        // JScript 方法 拷入页面即可   

        function preview1() {    

            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>  

JS 代码 
 

<body>   

 //在页面上调用js方法   

<a href=”javascript:preview1();”>打印此页</a>   

<div style=”display: none”>   

<!–startprint–>   

   打印信息内容 写在此处、、、                 

<!–endprint–>   

 </div>   

</body>