windows .print()对话框在chrome中不显示图形

window.print() dialog not show graph in chrome

本文关键字:显示 显示图 图形 chrome print 对话框 windows      更新时间:2023-09-26

我必须打印一个有图形的报告,当我使用window.print()时,它在所有浏览器中预览显示图形,但不在chrome中。

我使用的代码如下:

function Print(strid)
{
    var prtContent = document.getElementById(strid);
    var WinPrint =window.open('','','letf=0,top=0,width=1,height=1,toolbar=0,scrollbars=0,status=0');
    WinPrint.resizeTo(screen.width ,screen.height );
    WinPrint.document.write(prtContent.innerHTML);
    WinPrint.document.close();
    WinPrint.focus();
    WinPrint.print();
    WinPrint.close();
    prtContent.innerHTML=strOldOne;
}
请帮我解决这个问题。谢谢。

在Opera和Chrome (Netscape)中调用print之前需要暂停。

解决方案如下:

function init() {
  var objBrowse = window.navigator;
  if (objBrowse.appName == “Opera” || objBrowse.appName == “Netscape”) {
    setTimeout(‘window.print()’, 1000);
  } else {
    window.print();
    }
}
window.onload = init;

参考:http://danielbergsten.wordpress.com/2011/01/11/javascript-window-print-does-not-work-in-operachrome-browser/