jquery的printArea打印功能

来源:互联网 发布:猫咪视频软件下载 编辑:程序博客网 时间:2024/06/01 07:11

1.首先引用jquery.printArea.js脚本文件。

2.<div id="print">需要打印的内容</div>

$("#print").printArea();

注意:1.如果打印样式有问题的话,可以自定义一个样式文件,然后引用这个样式文件,例如:<link rel="stylesheet" href="../../../../css/print/print.css" media="print" />

             2.样式问题解决了,有些ie版本会把屏幕下的所有页面都打印出来,解决方案是:

(function($) {
$.fn.printArea = function() {
var ele = $(this);
var printCss = '';
$(document).find("link").filter(function() {
return $(this).attr("rel").toLowerCase() == "stylesheet";
}).each(
function() {
printCss = printCss + '<link type="text/css" rel="stylesheet" href="' + $(this).attr("href") + '" >';
});


var printContent = '<div class="' + $(ele).attr("class") + '">' + $(ele).html() + '</div>';
var windowUrl = 'about:blank';
var uniqueName = new Date();
var windowName = 'Print' + uniqueName.getTime();


var printWindow = window.open(windowUrl, windowName, 'left=50000,top=50000,width=0,height=0');
var BodyHtml = '<body>';
var BodyEnd = "</body>";
printWindow.document.write(printCss + BodyHtml + printContent + BodyEnd);
printWindow.document.close();
printWindow.focus();
printWindow.print();
printWindow.close();
}
})(jQuery);

将上面的js语句完全覆盖jquery.printArea.js里边的内容。

0 0
原创粉丝点击