打印方面总结,html打印设置,Web打印的解决方案
2018-07-23 本文已影响0人
于哈哈yhh
打印首先需要对浏览器进行页面设置去掉多余项:打开ie浏览器,点开工具按钮,打印--页面设置--页眉和页脚(里面都设置为空)
1.插件打印(jqprint)
参考: http://www.jq22.com/jquery-info347
注:这一方法的弊端是只能直接打印,无法自动适应纸张的大小
2.依赖新建页面并打印
//作用:打印页
function PrintPage() {
var pwin=window.open("","print"+new Date().getTime()); //新打开一个页面,加上new Date().getTime()是为了防止页面同名只显示一个
pwin.document.write(print_box_max.innerHTML);//print_box_max是打印区域的id
PageSetup_Null();//设置页眉和页脚为空
pwin.focus();
pwin.document.close(); //这句很重要,没有就无法实现
pwin.print();
}
var HKEY_Root,HKEY_Path,HKEY_Key;
HKEY_Root="HKEY_CURRENT_USER";
HKEY_Path="\\Software\\Microsoft\\Internet Explorer\\PageSetup\\";
//设置网页打印的页眉页脚为空 ,仅IE浏览器可用
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,"");
}
catch(e)
{}
}
注意:
在打印的时候可以对页面设置两种css,一种用于显示,一种用于打印,打印的文件要带有media="print"属性,即
<link href="/css/sendoc.print.css" rel="stylesheet" media="print">
如果需要新打开页面记得吧样式放在id包裹的内容里