为什么此代码无法在IE 10中打印iframe?

时间:2014-05-13 22:54:48

标签: javascript html internet-explorer iframe printing

我在MDN上从此页面中提取了此代码。它非常有效,除了IE10(以及其他可能的)。

此代码的目的是在iframe中打开除当前页面之外的URL并打印它。在IE10中,它只打印当前页面。

function closePrint () {
  document.body.removeChild(this.__container__);
}

function setPrint () {
  this.contentWindow.__container__ = this;
  this.contentWindow.onbeforeunload = closePrint;
  this.contentWindow.onafterprint = closePrint;
  this.contentWindow.focus(); // Required for IE
  this.contentWindow.print();
}

function printPage (sURL) {
  var oHiddFrame = document.createElement("iframe");
  oHiddFrame.onload = setPrint;
  oHiddFrame.style.visibility = "hidden";
  oHiddFrame.style.position = "fixed";
  oHiddFrame.style.right = "0";
  oHiddFrame.style.bottom = "0";
  oHiddFrame.src = sURL;
  document.body.appendChild(oHiddFrame);
}

由于没有Windows VM,我调试此功能的能力有限。这有什么看似明显不对的吗?

0 个答案:

没有答案