首页 > 代码库 > JQuery中的打印

JQuery中的打印

 利用IE自带的WebBrowser进行打印

 打印判断:

if(factory.object)//打印设置的判断        factory.printing.PageSetup();    else        alert("对不起!现在不支持!");if(factory.object)//打印预览的判断        factory.printing.Preview();    else        alert("对不起!现在不支持!");if(factory.object)//打印的判断    {        factory.printing.Print(true);    }        else    {    window.print();    }

 

 

 

<head>

<script>
var HKEY_Root,HKEY_Path,HKEY_Key;
HKEY_Root="HKEY_CURRENT_USER";
HKEY_Path="\\Software\\Microsoft\\Internet Explorer\\PageSetup\\";
function PageSetup_Null() {
try
{
var Wsh=new ActiveXObject("WScript.Shell");
HKEY_Key="header";
Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"");
HKEY_Key="footer";
Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"");
function print(a) {
alert(a.id)
switch (a.id) {
case "print0":
document.all.WebBrowser.Execwb(6, 1)//打印
break;
case "print1":
document.all.WebBrowser.ExecWB(6, 6); //直接打印
break;
case "print2":
document.all.WebBrowser.Execwb(8, 1)//页面设置
break;
case "print3":
document.all.WebBrowser.Execwb(7, 1)//打印预览
break;
}
document.body.insertAdjacentHTML("beforeEnd", "<object id=\"WebBrowser\" width=0 height=0 \classid=\"clsid:8856F961-340A-11D0-A96B-00C04FD705A2\">");

}
</script>
</head>

        <input type="button" runat="server" value=http://www.mamicode.com/"打印" onclick="print(this)" id="print0" />        <input type="button" runat="server" value=http://www.mamicode.com/"直接打印" onclick="print(this)" id="print1" />        <input type="button" runat="server" value=http://www.mamicode.com/"打印设置" onclick="print(this)" id="print2" />        <input type="button" runat="server" value=http://www.mamicode.com/"打印预览" onclick="print(this)" id="print3" />

一般情况下,如果不是特别的打印,需要借助打印控件,如loopod

   WebBrowse是一个简单的浏览器程序,支持打印,后退,前进,刷新,另存为,保存等功能,可以到网上搜一下方法,在这里,我们来说下,怎么使用它打印

首先,就像实例化对象一样,创建它

 

他们默认就是打印body中的内容,打印的时候,可以灵活选择要打印的信息,赋给body即可,如果不希望有些内容在打印的时候显示出来,可以将其隐藏

  <style>

@media print{

div{display:none}

td,table{

     background:display:none;

}

}

</style>

比如,打印的内容里有分页,或者其它标示,但是不想要,那就可以隐藏掉

这个分页在打印的时候就不能打印出来,要隐藏掉,这个时候就可以把这个代码放到div中,然后

@media print{

div{display:none}

隐藏掉就可以

 参照页面:http://www.cnblogs.com/oec2003/archive/2007/07/20/825352.html

JQuery中的打印