Javascript
function printPage(htmlPage)
{
var w = window.open("about:blank");
w.document.write(htmlPage);
w.print();
}
在这里,我们打开窗口 w,然后使用打印对话框打印页面。如您所知,Chrome 浏览器的默认打印对话框右侧已经有打印预览。所以,我不想显示窗口 w。是否可以在不打开弹出窗口的情况下直接显示 Chrome 的打印对话框?
Javascript
function printPage(htmlPage)
{
var w = window.open("about:blank");
w.document.write(htmlPage);
w.print();
}
在这里,我们打开窗口 w,然后使用打印对话框打印页面。如您所知,Chrome 浏览器的默认打印对话框右侧已经有打印预览。所以,我不想显示窗口 w。是否可以在不打开弹出窗口的情况下直接显示 Chrome 的打印对话框?
正如汉克建议的那样,您可以从 iframe 打印(也可以是隐藏的)。
<html>
<head>
<title>Print in iframe</title>
</head>
<body>
<iframe name="PrintFrame" id="PrintFrame" style="display: none"></iframe>
<script type="text/javascript">
function printPage(htmlPage)
{
window.frames["PrintFrame"].document.write(htmlPage);
window.frames["PrintFrame"].print();
}
printPage('<html><head><title></title></head><body><table border="1"><tr><td>row 1, cell 1</td><td>row 1, cell 2</td></tr><tr><td>row 2, cell 1</td><td>row 2, cell 2</td></tr></table></body></html>');
</script>
</body>
</html>