【问题标题】:Wait until print is complete - Jquery Asp.net MVC等到打印完成 - Jquery Asp.net MVC
【发布时间】:2009-12-10 21:19:41
【问题描述】:

我是新手。如果这是一个非常基本的问题,请原谅。我在 window.print() 上隐藏和显示 CSS。在 IE8 和 FF 上页面执行停止,直到我响应打印(打印或取消),然后它再次启动并完成页面加载。但在 IE6 和 IE7 上,页面加载不会等到我在打印对话框上做出响应。如何暂停页面执行,直到我在打印对话框上做出响应(打印或取消)?我不想使用 settimeout,因为它是针对特定时间的。如果我选择立即打印,则页面将不会加载,直到 settimeout 到期,反之亦然。请帮忙。

【问题讨论】:

  • 您提出了五个问题,从未投票,只接受了一个答案。如果您发现此站点上的建议有帮助,您应该投票给您认为有帮助的任何答案(通过单击答案旁边的向上箭头)并接受最有帮助的答案。这是一种表达“谢谢!”的方式

标签: jquery html printing time-wait


【解决方案1】:

不要在window.print() 上隐藏和显示。它永远不会正常工作,并且会导致其他问题。

改为使用单独的打印 CSS 文件:

<link href="/Content/Print.css" rel="stylesheet" type="text/css" media="print"/> 

此文件将定义打印样式,例如:

.noprint
{
    display: none !important;
}

然后您可以标记您不想打印的元素:

<img class="foo bar noprint" ...

与在 window.print() 上隐藏和显示不同,这适用于禁用 JavaScript。

【讨论】:

  • 是的。你是对的。连我自己都想过。但我想在实际打印之前显示页面的预览。所以,这迫使我使用隐藏和显示。我个人讨厌这样做。你有什么想法吗?
  • 在新窗口中打开预览,除了没有media="print"外,它使用打印样式表。
  • 谢谢克雷格。期待你的答复。到现在为止,我总是亲自点名感谢别人。我认为这是说谢谢的更好方式。但我会确保从现在开始我会标记为答案..
猜你喜欢
  • 1970-01-01
  • 2011-01-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多