你可以用 window.open() 不是一样的吗?function printPreview()  
{
  try
  {
    var printWindow = window.open("","_blank");
    var str = "<OBJECT id=WebBrowser classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 width=0></OBJECT>"
    var s = "<html>\r\n";
    s += "<head>";
    s += "<LINK href='../../pic/public.css' type='text/css' rel='stylesheet'>";
    s += "<meta http-equiv='Content-Type' content='text/html; charset=gb2312'>";
    s += "</head>";
    s += "<body><center><br>";
    s += "<div align=center style='width:96%'>";
    s += document.all.dgAnswer.outerHTML;
    s += "</div>";
    s += "</center></body>";
    s += "</html>";
    printWindow.document.write(s);
    printWindow.document.close();
    printWindow.document.body.insertAdjacentHTML("beforeEnd", str);
    printWindow.document.all.WebBrowser.ExecWB(7,1);
    printWindow.close();
  }
  catch(e)
  {
    alert("您的浏览器版本太低,请升级您的浏览器!");
  }
}