javascript - Window.Print() 在 chrome/Firefox 中不工作

标签 javascript dom

我正在使用以下代码打印 div 中的内容。它在 IE 中运行良好,但在 chrome 和 firefox 中显示黑屏。

代码:

var DocumentContainer = document.getElementById('TermsMainDiv');
    var WindowObject = window.open('', "PrintWindow", 
"width=800,height=700,top=200,left=200,toolbars=no,scrollbars=yes,status=no,resizable=no");
    WindowObject.document.writeln(DocumentContainer.innerHTML);
    WindowObject.document.close();
    WindowObject.focus();
    WindowObject.print();
    WindowObject.close();

最佳答案

IE 和其他浏览器的单独代码。它现在工作正常。

代码:

 <script type='text/javascript'>
 var originalContents;
    function Print() {

        if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)) {
            var DocumentContainer = document.getElementById('TermsSCMainDiv');
            var WindowObject = window.open('', "PrintWindow", 
"width=800,height=700,top=200,left=200,toolbars=no,
 scrollbars=yes,status=no,resizable=no");
            WindowObject.document.writeln(DocumentContainer.innerHTML);
            WindowObject.document.close();
            WindowObject.focus();
            WindowObject.print();
            WindowObject.close();
        }
        else {
            originalContents = document.body.innerHTML;
            var printable = document.getElementById('TermsSCMainDiv');
            document.body.innerHTML = printable.innerHTML;
            printCoupon();
        }
    }

    function printCoupon() {
        window.print();
        endPrintCoupon();
    }

    function endPrintCoupon() {
        document.body.innerHTML = originalContents;
        document.getElementById('TermsSCMainDiv').scrollIntoView(true);
        location.reload();
    }
 </script>

关于javascript - Window.Print() 在 chrome/Firefox 中不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13285668/

相关文章:

javascript - 使用原型(prototype)js选择元素

javascript - 在 node.js 中使用 XPath

javascript - 将页面元素索引到 JSON 对象?或者 jQuery 每次都选择它?

javascript - 如何阻止快速点击破坏我的代码?

javascript - 如何根据其他操作的结果对操作进行排队

javascript - 在动态创建的输入上使用向下箭头键将光标移动到下一个输入

javascript - 如何在组件渲染之前在 vuex 中填充商店

javascript - 在 Greasemonkey 脚本中存储数据

javascript - Javascript 是否接受 getElementsByTagName 中的路径

javascript - jQuery 新手,需要一些帮助