jQuery插件PrintArea实现javascript打印页面某区域功能

来源:http://www.biuuu.com/?p=722


实现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打印页面某区域功能。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值