谷歌浏览器打印预览不会第一次加载页面

罗密欧

我正在尝试使用此代码打印页面

<html>
<head>
    <script type="text/javascript">
        function Popup() 
        {

            var mywindow = window.open('', 'Ticket info', 'height=400,width=600');
            mywindow.document.write('<html><head><title>my div</title>');
            mywindow.document.write('<style type="text/css"> *{margin: 0; padding: 0;} body{padding: 3px; padding-left:20px;font:6px bold Arial;}</style>');
            mywindow.document.write('<script src="http://code.jquery.com/jquery-latest.min.js"><'+'/script>');
            mywindow.document.write('<script src="jquery-barcode.min.js"><'+'/script>');
            mywindow.document.write('</head><body>');
            mywindow.document.write('<div id="demo"></div>');
            mywindow.document.write('<script type="text/javascript">$("#demo").barcode("1234567890128", "code39");<'+'/script>');
            mywindow.document.write('</body></html>');
            mywindow.print();
            return true;
        }
    </script>
</head>
<body>
<input type="button" value="Print Div" onclick="Popup();" />
</body>
</html>

基本上,它将弹出一个窗口并显示页面的打印预览。第一次尝试加载打印预览将不会加载条形码,并且当您取消第一个打印预览然后右键单击页面并再次打印时,第二次打印预览现在将显示要打印的条形码。

第一次打印尝试

重印

第二次打印

我认为问题出在此行:

mywindow.document.write('<script type="text/javascript">$("#demo").barcode("1234567890128", "code39");<'+'/script>');

当我对此行发表评论并在页面中添加虚拟文本时。第一次尝试时,它将自动显示在打印预览中。

在尝试从css文件加载样式之前,我遇到了同样的问题。我通过将样式直接转移到弹出窗口来解决此问题。

我的问题是为什么会这样?以及如何在第一次尝试打印预览时加载条形码?

阿南德·辛格(Anand Deep Singh)

您需要延迟打印。铬存在天然缺陷。

代码如下:

function PrintDiv(data) {
    var mywindow = window.open();
    var is_chrome = Boolean(mywindow.chrome);
    mywindow.document.write(data);

   if (is_chrome) {
     setTimeout(function() { // wait until all resources loaded 
        mywindow.document.close(); // necessary for IE >= 10
        mywindow.focus(); // necessary for IE >= 10
        mywindow.print(); // change window to winPrint
        mywindow.close(); // change window to winPrint
     }, 250);
   } else {
        mywindow.document.close(); // necessary for IE >= 10
        mywindow.focus(); // necessary for IE >= 10

        mywindow.print();
        mywindow.close();
   }

    return true;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

HTML页面第一次加载和第二次加载不同(谷歌浏览器)

来自分类Dev

EaselJs,“位图”在第一次加载浏览器时无法显示

来自分类Dev

第一次加载任何浏览器都花费太长时间

来自分类Dev

第一次加载页面

来自分类Dev

图片在源中,但第一次不在浏览器中显示

来自分类Dev

选择第一次单击浏览器操作时将打开的弹出窗口

来自分类Dev

RouterLink不会在第一次加载时从父页面模板添加href

来自分类Dev

第一次单击后,如何让此文本框在浏览器中显示不同的页面(winforms C#)

来自分类Dev

谷歌地图infobubble动态内容不会在第一次单击标记时加载

来自分类Dev

单击第一次返回浏览器后无法使Iron路由器正常工作

来自分类Dev

如何防止过渡元素在每次浏览器第一次刷新或打开网页时过渡?

来自分类Dev

谷歌图表并不总是在第一次尝试时加载

来自分类Dev

第一次加载页面时,如何使网格不加载数据?

来自分类Dev

仅在第一次使用Cookie加载页面时显示加载动画?

来自分类Dev

延迟后(仅一次)或第一次加载页面上的 iFrame 后滚动到页面顶部

来自分类Dev

第一次导航后,React Router不会渲染推送的页面

来自分类Dev

React 子组件在第一次加载时不会收到道具

来自分类Dev

在第一次加载页面时未显示VisualElements

来自分类Dev

不想在jqGrid中加载页面后第一次显示排序图标

来自分类Dev

当页面第一次在编辑链接上加载时,如何保存值?

来自分类Dev

页面加载后,第一次没有立即调用Ajax

来自分类Dev

Angularjs 过滤器页面第一次加载

来自分类Dev

插值在第一次加载页面时不起作用

来自分类Dev

第一次加载页面后如何避免警报

来自分类Dev

如何从链接打开Android应用程序而无需要求用户在第一次浏览器或应用程序之间进行选择

来自分类Dev

Mobx的计算值在第一次但不是在第一次加载时不会在UI上更新(观察)

来自分类Dev

第一次推送到数组后,Angular 不会绑定转发器

来自分类Dev

打印窗口第一次不工作

来自分类Dev

第一次打印的UserControl的数据绑定问题

Related 相关文章

  1. 1

    HTML页面第一次加载和第二次加载不同(谷歌浏览器)

  2. 2

    EaselJs,“位图”在第一次加载浏览器时无法显示

  3. 3

    第一次加载任何浏览器都花费太长时间

  4. 4

    第一次加载页面

  5. 5

    图片在源中,但第一次不在浏览器中显示

  6. 6

    选择第一次单击浏览器操作时将打开的弹出窗口

  7. 7

    RouterLink不会在第一次加载时从父页面模板添加href

  8. 8

    第一次单击后,如何让此文本框在浏览器中显示不同的页面(winforms C#)

  9. 9

    谷歌地图infobubble动态内容不会在第一次单击标记时加载

  10. 10

    单击第一次返回浏览器后无法使Iron路由器正常工作

  11. 11

    如何防止过渡元素在每次浏览器第一次刷新或打开网页时过渡?

  12. 12

    谷歌图表并不总是在第一次尝试时加载

  13. 13

    第一次加载页面时,如何使网格不加载数据?

  14. 14

    仅在第一次使用Cookie加载页面时显示加载动画?

  15. 15

    延迟后(仅一次)或第一次加载页面上的 iFrame 后滚动到页面顶部

  16. 16

    第一次导航后,React Router不会渲染推送的页面

  17. 17

    React 子组件在第一次加载时不会收到道具

  18. 18

    在第一次加载页面时未显示VisualElements

  19. 19

    不想在jqGrid中加载页面后第一次显示排序图标

  20. 20

    当页面第一次在编辑链接上加载时,如何保存值?

  21. 21

    页面加载后,第一次没有立即调用Ajax

  22. 22

    Angularjs 过滤器页面第一次加载

  23. 23

    插值在第一次加载页面时不起作用

  24. 24

    第一次加载页面后如何避免警报

  25. 25

    如何从链接打开Android应用程序而无需要求用户在第一次浏览器或应用程序之间进行选择

  26. 26

    Mobx的计算值在第一次但不是在第一次加载时不会在UI上更新(观察)

  27. 27

    第一次推送到数组后,Angular 不会绑定转发器

  28. 28

    打印窗口第一次不工作

  29. 29

    第一次打印的UserControl的数据绑定问题

热门标签

归档