0

我正在尝试打印特定 DIV 的内容,并且在打印 DIV 后,必须正确修复网页,但它只显示我刚刚打印的 DIV 并隐藏实际网页。有什么问题吗?

我的代码是

function printdiv(printpage)
{
var newstr = document.all.item(printpage).innerHTML;
document.body.innerHTML = newstr;
window.print();
window.close();
}

<img src="im/print.png" onClick="printdiv('mytabprint');" width="50" />

在上面的代码mytabprint中是我要打印的 DIV 元素。

4

1 回答 1

3

有什么问题吗?

是的,你不是“隐藏”其他内容,你实际上是用你的 div 替换整个页面内容:

document.body.innerHTML = newstr;

您可以简单地使用打印样式表。例如,将其添加到您的 CSS 中:

@media print {
   /* 
   rules that only apply for printing 
   like hiding some content
   */
}

或者链接一个单独的 CSS 进行打印

<link rel="stylesheet" href="your_css.css" type="text/css" media="print" />
于 2013-06-18T14:36:36.240 回答