实现javascript打印功能,打印整个页面就很简单,但如果指定打印某一个区域就有点难点,这里有一个jQuery插件PrintArea可实现打印页面某区域功能。
使用说明
需要使用jQuery库文件和PrintArea库文件
使用方法
一,包含文件部分
1.<script type="text/javascript" src="jquery.js"></script>
2.<script type="text/javascript" src="jquery.PrintArea.js"></script>
二,html部分
1.<div id="biuuu_button">打印</div>
2.<div id="myPrintArea">
3......文本打印部分.....
4.</div>
三,javascript部分
1.$("div#biuuu_button").click(function(){
2.$("div#myPrintArea").printArea();
3.});
jQuery插件PrintArea完整方法如下:
1.(function($) {
2.var printAreaCount = 0;
3.$.fn.printArea = function()
4.{
5.var ele = $(this);
6.var idPrefix = "printArea_";
7.removePrintArea( idPrefix + printAreaCount );
8.printAreaCount++;
9.var iframeId = idPrefix + printAreaCount;
10.var iframeStyle =
'position:absolute;width:0px;height:0px;left:-500px;top:-500px;';
11.iframe = document.createElement('IFRAME');
12.$(iframe).attr({ style : iframeStyle,
13.id : iframeId
14.});
15.document.body.appendChild(iframe);
16.var doc = iframe.contentWindow.document;
17.$(document).find("link")
18..filter(function(){
19.return $(this).attr("rel").toLowerCase() == "stylesheet";
20.})
21..each(function(){
22.doc.write('<link type="text/css" rel="stylesheet" href="' +
23.$(this).attr("href") + '" >');
24.});
25.doc.write('<div class="' + $(ele).attr("class") + '">' + $(ele).html() +
'</div>');
26.doc.close();
27.var frameWindow = iframe.contentWindow;
28.frameWindow.close();
29.frameWindow.focus();
30.frameWindow.print();
31.}
32.var removePrintArea = function(id)
33.{
34.$( "iframe#" + id ).remove();
35.};
36.})(jQuery);
jQuery插件PrintArea的库代码非常简单,轻松实现javascript打印页面某区域功能。