【问题标题】:Window.print() does not take the current urlWindow.print() 不采用当前 url
【发布时间】:2012-07-12 07:56:43
【问题描述】:

我正在使用以下代码。根据此代码,将打开新窗口,并给出 url 的来源。但是在打印时,它显示 about:blank 正在打印。页面加载正确。在加载之前,页面url也是about:blank。但它很快就会更改为给定的网址。

var url="http://localhost:8080/hiring/docs/Keneth%20_1340800082258/Keneth%20_resume_1340800082258.pdf";
var printwindow = window.open(url, '_blank', 'fullScreen=yes');
//setTimeout('2000');
printwindow.focus();
printwindow.print();

【问题讨论】:

  • 你用一个简单的网站试过了吗?
  • 我在这里找到了一个 - jsfiddle.net/Q5Xc9/7。它适用于除我之外的所有其他链接。
  • 我注意到您刚才尝试打印PDF,我认为不能仅仅因为您在浏览器中看到它就可以打印PDF文件。它只是一个 Adob​​e Reader 插件,出于同样的原因,您无法在页面上打印 Flash 电影

标签: javascript printing window


【解决方案1】:

你试过了吗:

printwindow.onload = function() {
  printwindow.focus();
  printwindow.print();
};

【讨论】:

  • 不会进入函数。我提醒检查。
  • 我在这里找到了一个 - jsfiddle.net/Q5Xc9/7。它适用于除我之外的所有其他链接。
  • 您的链接是 PDF,这就是它失败的原因,我不知道从 JS 自动打印 pdf 的方法
【解决方案2】:

我猜window.print() 在页面实际加载之前运行,因为执行代码的下一个命令需要微秒,但页面不会在微秒内加载,这就是它打印空白页的原因,尝试在文档之后打印加载事件。

修复

我注意到您刚才尝试打印 PDF,我不认为仅仅因为您可以在浏览器中看到它就可以打印 PDF 文件。它只是一个 Adob​​e Reader 插件,出于同样的原因,您无法在页面上打印 Flash 电影

【讨论】:

  • printwindow.onload 不是函数错误。我也试过上面的答案。那不会触发打印
  • 你必须访问那个窗口的document对象,而不是在那个对象上使用onload
  • 我在这里找到了一个 - jsfiddle.net/Q5Xc9/7。它适用于除我之外的所有其他链接。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-09-09
  • 1970-01-01
相关资源
最近更新 更多