浏览器打印对话框不显示
Browser Print dialog not showing
我的 angularjs 项目中引用了 print.min.js。我已成功打印(非常简单!)满足我的大部分需求。当用户按下我的 'Print' 按钮时,我遇到了 运行 浏览器打印对话框不出现的情况。该问题似乎与文件大小有关。我还不知道大小阈值,但似乎在几页长度之后,该过程在 print.min.js 某处挂起。较小的文件(2 - 3 页左右)打印没有问题。有什么想法吗?
谢谢!
乔
默认情况下,Print.js 将处理每个 html 元素的计算样式。打印大型和/或复杂 html 时,此过程可能需要一段时间。特别是在较慢的机器上。
为防止这种情况,库有一个参数 scanStyles
,可以设置为 false
。
但是,为了使其正常工作,您可能希望使用 css 类 而不是内联样式来设置 html 的样式。由于库不扫描计算样式,它需要接收要在打印时使用的 css。
例如,在带有两个附加样式表 myStylesheet.css
和 vendor.css
的页面上打印 id myElement
的元素时:
printJS(
{
printable: 'myElement',
type: 'html',
scanStyles: false,
css: ['myStyleSheet', 'vendor.css']
}
)
这也支持 css 打印媒体查询。
如有必要,您还可以传递自定义内联样式:
printJS(
{
printable: 'myElement',
type: 'html',
scanStyles: false,
css: ['myStyleSheet', 'vendor.css'],
style: 'h1 { color: blue; }, someClass { font-size: 1rem; }'
}
)
我的 angularjs 项目中引用了 print.min.js。我已成功打印(非常简单!)满足我的大部分需求。当用户按下我的 'Print' 按钮时,我遇到了 运行 浏览器打印对话框不出现的情况。该问题似乎与文件大小有关。我还不知道大小阈值,但似乎在几页长度之后,该过程在 print.min.js 某处挂起。较小的文件(2 - 3 页左右)打印没有问题。有什么想法吗?
谢谢!
乔
默认情况下,Print.js 将处理每个 html 元素的计算样式。打印大型和/或复杂 html 时,此过程可能需要一段时间。特别是在较慢的机器上。
为防止这种情况,库有一个参数 scanStyles
,可以设置为 false
。
但是,为了使其正常工作,您可能希望使用 css 类 而不是内联样式来设置 html 的样式。由于库不扫描计算样式,它需要接收要在打印时使用的 css。
例如,在带有两个附加样式表 myStylesheet.css
和 vendor.css
的页面上打印 id myElement
的元素时:
printJS(
{
printable: 'myElement',
type: 'html',
scanStyles: false,
css: ['myStyleSheet', 'vendor.css']
}
)
这也支持 css 打印媒体查询。
如有必要,您还可以传递自定义内联样式:
printJS(
{
printable: 'myElement',
type: 'html',
scanStyles: false,
css: ['myStyleSheet', 'vendor.css'],
style: 'h1 { color: blue; }, someClass { font-size: 1rem; }'
}
)