被恶心了…
第一 . 打印, 部分打印.
直接打印 就调用 Window.print() 即可, 会打印你当前页面的内容, 但是这里存在一个问题, 有时候调用打印预览的时候 显示的是空白的页面, 这是因为 加载顺序的问题, 你的页面还没加载完成 但是打印的方法已经提交.
在需要打印内容 加一个div 标上ID 就行
bdhtml=window.document.body.innerHTML;
var jubuData = document.getElementById("print").innerHTML;
//把获取的 局部div内容赋给body标签, 相当于重置了 body里的内容
window.document.body.innerHTML= jubuData;
window.print();
location.reload(); //重新刷新当前窗口, 很重要. 不刷新会导致除局部之外的全失效了
window.document.body.innerHTML=bdhtml;//重新给页面内容赋值;
② 不需要的地方加上这个样式就行, @media print 这个的 代表的打印时候会取的样式, 平常不影响.
@media print
{
.notprint { display:none }
}
其他的取部分的 其他人博客上也写的很多了
踩坑一:
打印 a 链接的时候 会出现它的地址
地址暴露不太友好. 在 @media print 里面加上这个
a[href]:after {
content: none !important;
}
踩坑二: 图片不显示
图还没加载出来 打印方法就上了
$('img').load(function(){
// 加载完成之后执行某方法
});
参照:链接: javaScript & jquery完美判断图片是否加载完毕.