JS打印组合功能
本文为大家分享了JS打印组合功能,功能全面,供大家参考,具体内容如下
1.局部打印--即想打印什么地方就打印什么地方
解决办法:
将不想打印的地方隐藏起来
<styletype="text/css"media=print>
.noprint{display:none}
分页的时候用
.PageNext{page-break-after:always;}
然后给不想打印的页面元素添加:class="Noprint",那就不会出现在打印和打印预览中了。
想分页的地方添加: <divclass="PageNext"></div>就可以了。
</style>
在将不想打印的地方控制起来
<pclass="noprint">不需要打印的地方</p>
2.引用组建
WebBrowser是IE内置的浏览器控件,无需用户下载.
WebBrowser控件
<objectID='WebBrowser'WIDTH=0HEIGHT=0CLASSID='CLSID:8856F961-340A-11D0-A96B-00C04FD705A2'></object>
关于这个组件的用法,列举如下:
WebBrowser.ExecWB(1,1)打开
Web.ExecWB(2,1)关闭现在所有的IE窗口,并打开一个新窗口
Web.ExecWB(4,1)保存网页
Web.ExecWB(6,1)打印
Web.ExecWB(7,1)打印预览
Web.ExecWB(8,1)打印页面设置
Web.ExecWB(10,1)查看页面属性
Web.ExecWB(15,1)好像是撤销,有待确认
Web.ExecWB(17,1)全选
Web.ExecWB(22,1)刷新
Web.ExecWB(45,1)关闭窗体无提示
3.实例
<head>
<scriptlanguage="javascript">
<styletype="text/css"media=print>
.noprint{display:none}
</style>
functionprintsetup()
{
//打印页面设置
wb.execwb(8,1);
}
functionprintpreview(){
//打印页面预览
wb.execwb(7,1);
}
functionprintit()
{
if(confirm('确定打印吗?'))
{
wb.execwb(6,6)
}
}
</script>
</head>
<body>
<pclass="noprint">
<OBJECTclassid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"height="0"id="wb"name="wb"width="0"></OBJECT>
<inputtype="button"name="button_print"value="打印"onclick="javascript:printit()"/>
<inputtype="button"name="button_setup"value="打印页面设置"onclick="javascript:printsetup();"/>
<inputtype="button"name="button_show"value="打印预览"onclick="javascript:printpreview();"/>
</p>
</body>
3.JS实现简单的页面局部打印
functionpreview(oper)
{
if(oper<10){
bdhtml=window.document.body.innerHTML;//获取当前页的html代码
sprnstr="<!--startprint"+oper+"-->";//设置打印开始区域
eprnstr="<!--endprint"+oper+"-->";//设置打印结束区域
prnhtml=bdhtml.substring(bdhtml.indexOf(sprnstr)+18);//从开始代码向后取htm
prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));//从结束代码向前取html
window.document.body.innerHTML=prnhtml;
window.print();
window.document.body.innerHTML=bdhtml;
}
else{
window.print();
}
}
使用很简单将页面内要打印的内容加入中间<!--startprint1-->XXXXX<!--endprint1-->
再加个打印按纽onclick=preview(1)
4、控制"纵打"、横打”和“页面的边距。
(1)<scriptdefer>
functionSetPrintSettings(){
//--advancedfeatures
factory.printing.SetMarginMeasure(2)//measuremarginsininches
factory.SetPageRange(false,1,3)//needpagesfrom1to3
factory.printing.printer="HPDeskJet870C"
factory.printing.copies=2
factory.printing.collate=true
factory.printing.paperSize="A4"
factory.printing.paperSource="Manualfeed"
//--basicfeatures
factory.printing.header="ThisisMeadCo"
factory.printing.footer="AdvancedPrintingbyScriptX"
factory.printing.portrait=false
factory.printing.leftMargin=1.0
factory.printing.topMargin=1.0
factory.printing.rightMargin=1.0
factory.printing.bottomMargin=1.0
}
</script>
functionpreview(oper)
{
if(oper<10){
bdhtml=window.document.body.innerHTML;//获取当前页的html代码
sprnstr="<!--startprint"+oper+"-->";//设置打印开始区域
eprnstr="<!--endprint"+oper+"-->";//设置打印结束区域
prnhtml=bdhtml.substring(bdhtml.indexOf(sprnstr)+18);//从开始代码向后取htm
prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));//从结束代码向前取html
window.document.body.innerHTML=prnhtml;
window.print();
window.document.body.innerHTML=bdhtml;
}
else{
window.print();
}
}
使用很简单将页面内要打印的内容加入中间<!--startprint1-->XXXXX<!--endprint1-->
再加个打印按纽onclick=preview(1)
更多关于js打印功能的内容,点击《js打印功能汇总》专题学习
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。