Onclick事件,打印div。如何排除类名

时间:2013-12-29 19:33:49

标签: javascript html5

这个问题有点添加Stackoverflow question我最终得到了这段代码。

<script type="text/javascript">
    //Simple wrapper to pass a jQuery object to your new window
    function PrintElement(elem){
    var data = '';
    $(elem).each(function() {
        data = data + $(this).html();
    });
    Popup(data);  
}

    //Creates a new window and populates it with your content
    function Popup(data) {
        //Create your new window
        var w = window.open('', 'Print', 'height=400,width=600');
        w.document.write('<html><head><title>Print</title>');
        //Include your stylesheet (optional)
        w.document.write('<link rel="stylesheet" href="add/css/layout.css" type="text/css" />');
        w.document.write('<link rel="stylesheet" href="add/css/main.css" type="text/css" />');
        w.document.write('</head><body>');
        //Write your content
        w.document.write(data);
        w.document.write('</body></html>');
        w.print();
        w.close();

        return true;
    }
  </script>

当我招惹

  

的onclick = “PrintElement( 'PrintElement。')” &GT;打印

我可以用class =“PrintElement”打印出一些div,我现在的问题是......

如果我在DIV中有一些我不想打印的元素,那我怎么能添加一个class =“NOprintelement”,这样代码就知道这个类的元素需要在print事件中被排除?

1 个答案:

答案 0 :(得分:1)

在不了解更多细节的情况下,您应该尝试使用css媒体查询隐藏DOM元素。例如,如果你有一个div = class ='hideWhenPrinting',你的CSS可以包括:

@media print {
  .hideWhenPrinting { display: none }
}

请参阅此相关问题: How do I hide an element when printing a web page?