javascript - 在 Javascript 中使用 iFrame 进行跨浏览器打印

标签 javascript jquery printing cross-browser

我想使用 iFramejavascript 进行打印。 以下是我的示例代码:

Javascript

 function printDiv(divP) {

            window.frames["print_frame"].document.body.innerHTML = $(divP).html();
            window.frames["print_frame"].window.focus();
            window.frames["print_frame"].window.print();
        }

HTML

<iframe name="print_frame" width="0" height="0" frameborder="0" src="about:blank">
        </iframe>

此代码仅适用于 IE 和 Mozilla。其他浏览器正在打印白页。我不想使用媒体查询。可能的问题是什么?

最佳答案

解决方案:

少量更改:document.write :( 以及打开和关闭函数)+ iframe 1px 大小..

 function printDiv(divP) {
  window.frames["print_frame"].document.open();
  window.frames["print_frame"].document.write('<body>aaaaaaaa</body>');
  window.frames["print_frame"].document.close();
  window.frames["print_frame"].focus();
  window.frames["print_frame"].print();
        }

printDiv()

http://jsbin.com/eLIQAXU/4/quiet

这在 FF、chrome、IE、safari 中工作:

enter image description here

关于javascript - 在 Javascript 中使用 iFrame 进行跨浏览器打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20611282/

相关文章:

Javascript/Jquery 方法获取更改事件下拉列表的先前选择值

php - Html Select Box 从mysql获取值

css - 打印页面时隐藏 url

printing - 如何在 Windows 8 中打印 xps 文件

javascript - React Native 中的条件导入

用于查找两个字符串之间的子字符串的 Javascript REGEX

php - 如果文件存在则将脚本排队

java - 如何从 Java 打印到 Windows USB 打印机?

javascript - 动态添加选项到脚本

javascript - 命令行 node-webkit 应用程序