局部打印插件 jquery.PrintArea.js


js代码

(function ($) {
     var printAreaCount =  0;
    $.fn.printArea = function () {
         var ele = $( this);
         var idPrefix =  " printArea_ ";
        removePrintArea(idPrefix + printAreaCount);
        printAreaCount++;
         var iframeId = idPrefix + printAreaCount;
         var iframeStyle =  ' position:absolute;width:0px;height:0px;left:-500px;top:-500px; ';
        iframe = document.createElement( ' IFRAME ');
        $(iframe).attr({
            style: iframeStyle,
            id: iframeId
        });
        document.body.appendChild(iframe);
         var doc = iframe.contentWindow.document;
        $(document).find( " link ").filter(function () {
             return $( this).attr( " rel ").toLowerCase() ==  " stylesheet ";
        }).each(
                function () {
                    doc.write( ' <link type="text/css" rel="stylesheet" href=" '
                            + $( this).attr( " href ") +  ' " > ');
                });
        doc.write( ' <div class=" ' + $(ele).attr( " class ") +  ' "> ' + $(ele).html()
                +  ' </div> ');
        doc.close();
         var frameWindow = iframe.contentWindow;
        frameWindow.close();
        frameWindow.focus();
        frameWindow.print();
    }
     var removePrintArea = function (id) {
        $( " iframe# " + id).remove();
    };
})(jQuery);

 

使用示例:

<input type= " button " id= " btnPrint " value= " 打印 "/>
<div id= " printContent ">要打印的内容区域<div>

<script type= " text/javascript ">
$(function(){
        $( "# btnPrint ").click(function(){ $( "# printContent ").printArea(); });
});
</script>

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM