Jquery局部打印插件

局部打印插件 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>

时间: 2024-08-02 14:30:39

Jquery局部打印插件的相关文章

jquery局部打印插件使用

基于jquery库的jquery.PrintArea.js插件源代码为: 1 (function ($) { 2 var printAreaCount = 0; 3 $.fn.printArea = function () { 4 var ele = $(this); 5 var idPrefix = "printArea_"; 6 removePrintArea(idPrefix + printAreaCount); 7 printAreaCount++; 8 var iframeI

局部打印插件 jquery.PrintArea.js

(function ($) { var printAreaCount = 0; $.fn.printArea = function () { var ele = $(this); var idPrefix = "printArea_"; removePrintArea(idPrefix + printAreaCount); printAreaCount++; var iframeId = idPrefix + printAreaCount; var iframeStyle = 'pos

jquery 网页局部打印总结

最近开发过程中遇到了js局部打印的功能,在网上找相关的资料,最终找到了juery.jqprint-0.3.js 和jquery.PrintArea.js两种. 最初使用的是jquery.jqprint-0.3.js,是在弹窗的情况下使用,即使出现滚动条也依然能够把所有内容成功打印出来.但是如果在当前页面div中出现滚动条(div内容过多,出现垂直滚动条)的话,则内容打印不全.所以最终选择的的是jquery.PrintArea.js.这是我现在发现的最明显的区别. 这两个都是打印指定div内的显示

jQuery简单易用的网页内容打印插件

简要教程 jQuery.print是一款简单易容且功能强大的网页内容打印.该网页打印插件可以打印指定区域的网页元素,可以指定跳过不打印某些元素,还可以打印整个页面内容.并且提供了丰富的打印参数设置. 使用方法 使用该网页打印插件要引入jQuery和jquery.print.js文件.<script type="text/javascript" src="http://1112.www.qixoo.qixoo.com/js/jquery.min.js">&

asp.net 实现在线打印功能,jQuery打印插件PrintArea实现自动分页

使用的组件:jQuery打印插件PrintArea,有兴趣的可以研究一下. 使用方法略过,这里将介绍如何实现打印多页是可以分页. 现在提供两种方法思路: 1.根据特定的打印机型号和使用的纸张类型,然后用JS来算出每页多高,按照每张纸的高度来进行适当的增减高度.(这种方式缺点就是只能针对单中类型的纸张,计算十分的繁琐,要些很多加减法 -_-);). 参考A4纸高度的网页:http://www.jb51.net/office/word/67360.html 2.在如上一个思路的方式,试着查找能不能自

js或jquery实现页面打印可局部打印

1.js实现(可实现局部打印)代码如下: <html><title>js打印</title><head></head><body><input id=btnprint type=button value=打印 onclick=javascript:window.print(); /> <input id=btnprint type=button value=打印预览 onclick=preview(1) />&

js或jquery实现页面打印(局部打印)

1.js实现(可实现局部打印) 复制代码代码如下: <html> <title>js打印</title> <head></head><body> <input id="btnPrint" type="button" value="打印" onclick="javascript:window.print();" /> <input id=&

Jqprint 轻量级页面打印插件

最近公司项目用到了页面打印功能,不能不承认,JQ的这个打印插件很小巧功能很强大 1.首先需要引入必须的js文件 <script language="javascript" src="jquery-1.4.4.min.js"></script><script language="javascript" src="jquery.jqprint-0.3.js"></script> 2.

新的浏览器局部打印实现方法

背景 最近在做开发平台,其中涉及到局部打印的功能,将此功能做为开发平台的一个通用功能,从网上搜了一些解决方案和开源js组件,测试的结果都不满意,大多是将打印的内容放在一个iframe内,去打印iframe里面的内容,对性能影响比较大,特别是要打印的内容比较多的情况,而且效果有可能跟实际显示的不一样,干脆还是自己想办法实现吧,后来自己琢磨出了另一种实现方法,和大家一起分享下,谁有更好的解决方案欢迎交流 思路 思路说起来也比较简单,所谓局部打印就是只打印页面中的一部分(如果是打印整个页面就没问题了,