遇到一个有趣的浏览器问题 - 我已经实现了jQuery来切换页面的样式表链接href,只需单击按钮,在普通视图css文件和易于打印的css文件之间切换。它的工作原理除了当查看者转到易于打印的版本时,我在应用新链接href后调用window.print()。打印预览自动出现,并且在预览中,某些应该显示的元素:无打印版本可见。如果点击“打印”,则打印出来就像预览一样。如果您取消打印,那么屏幕上的页面仍然处于打印友好模式,但一切正常,没有任何东西不可见。如果您然后右键单击并选择“打印...”,则预览显示应该显示,并且所有内容都按照它应该打印的方式显示。易于打印的版本无法正常工作
这必须是一个浏览器的东西,因为它只发生在Chrome浏览器,而不是FF。
这是被调用每当按钮被点击的功能:
$('#printOnlyBtn').click(function(){
if ($('#mainStylesheetLink').attr('href') == 'normal.css' {
//switch to print-friendly css file and print
doPrint();
}
else {
//switch back to normal css file
$('#mainStylesheetLink').attr('href', 'normal.css');
}
});
function doPrint(){
$('#mainStylesheetLink').attr('href', 'printFriendly.css');
window.print();
}
一种解决方案是采取了调用window.print();只需使用一个按钮将页面置于易于打印的模式,然后再次点击另一个按钮即可实际打印页面。但如果可能的话,我宁愿保持一键式过程。
感谢您的建议 - 我就有点不足,所以没有太多时间来重写CSS,但我一定会看看。 – Cmaso