博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
web页面实现指定区域打印功能
阅读量:5141 次
发布时间:2019-06-13

本文共 1612 字,大约阅读时间需要 5 分钟。

第一种方法:使用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" οnclick="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 language="javascript">
function preview(oper){
if (oper < 10){
bdhtml=window.document.body.innerHTML;//获取当前页的html代码
sprnstr="<!--startprint"+oper+"-->";//设置打印开始区域
eprnstr="<!--endprint"+oper+"-->";//设置打印结束区域
prnhtml=bdhtml.substring(bdhtml.indexOf(sprnstr)+18); //从开始代码向后取html
prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));//从结束代码向前取html
window.document.body.innerHTML=prnhtml;
window.print();
window.document.body.innerHTML=bdhtml;
} else {
window.print();
}
}
</script>

 

html 代码   
收藏代码

<body>   

<div >
<span>不打印内容写在此处</span>
<!--startprint1-->
<span>打印1信息内容 写在此处、、、 </span>
<!--endprint1-->
<!--startprint2-->
<span>打印2信息内容 写在此处、、、</span>
<!--endprint2-->
 
</div>
<button class="noprint" type="button" οnclick="preview(1)">print</button>

</body>  

转载于:https://www.cnblogs.com/changfeng1800/p/11287741.html

你可能感兴趣的文章
07动手动脑
查看>>
django知识点总结
查看>>
C++ STL stack、queue和vector的使用
查看>>
第二章读书笔记
查看>>
redis-cluster
查看>>
linux yum配置
查看>>
ASP.NET_ASP.NET 缓存Cache
查看>>
js预载入 new Image对象
查看>>
安卓高级组件-----图像切换器
查看>>
[转载]我的助理辞职了!——给不听话的下属看看
查看>>
自定义的屏幕适配方法
查看>>
android 处理302地址
查看>>
【常用算法总结——树状数组】
查看>>
地图漫游~
查看>>
设计模式之简易工厂模式
查看>>
通过XmlSerializer 实现XML的序列化与反序列化
查看>>
根据对象的某一属性对数组进行排序
查看>>
SSH
查看>>
leetcode 19.删除链表的第n个节点
查看>>
wps操作记录
查看>>